null
- это специальная ссылка, означающая «ничего не ссылаться»
Пустой относится только к коллекциям (а строка - это коллекция символов). Это означает, что существует допустимая коллекция, но она не содержит (0) элементов.
При возврате коллекции обычно лучше возвращать пустую коллекцию вместо нуля.
При получении коллекции решите, следует ли null
рассматривать как пустую коллекцию. Это зависит от ситуации, достигнутых договоренностей и обещаний.
я знаю, что ноль - это особый случай, который не равен самому себе
Не совсем верно. null == null
всегда верно.