Nullable
(C#) имеет немного другое значение, но в любом случае и Option
(Scala), и Nullable
может использоваться для выражения понятия «ценность или ничего».
Например, если вы хотите найти подстроку в строке -- вместо скрытого -1 как Int лучше вернуть Option[Int] (в Scala это будет None
ни за что).
Есть ли такой класс в стандартной Java? Если да, то что это?
Обратите внимание, я не спрашиваю, как написать такой класс.
Как я уже писал, Nullable
имеет другое значение. Рассмотрим это:
Просто представьте Map[K,V] и метод get, семантика которого состоит в том, чтобы получить значение ключа, если такой ключ есть, или ничего, если такого ключа нет.
Вы не можете использовать null по двум причинам, вы не можете использовать любой конкретный класс по одной причине. Вариант [V] — это путь.