Есть ли в Java стандартный класс Option или Nullable?

Nullable(C#) имеет немного другое значение, но в любом случае и Option(Scala), и Nullableможет использоваться для выражения понятия «ценность или ничего».

Например, если вы хотите найти подстроку в строке -- вместо скрытого -1 как Int лучше вернуть Option[Int] (в Scala это будет Noneни за что).

Есть ли такой класс в стандартной Java? Если да, то что это?

Обратите внимание, я не спрашиваю, как написать такой класс.

Обновление

Как я уже писал, Nullableимеет другое значение. Рассмотрим это:

Просто представьте Map[K,V] и метод get, семантика которого состоит в том, чтобы получить значение ключа, если такой ключ есть, или ничего, если такого ключа нет.

Вы не можете использовать null по двум причинам, вы не можете использовать любой конкретный класс по одной причине. Вариант [V] — это путь.

6
задан greenoldman 21 March 2012 в 20:51
поделиться