Spec-Zone.ru › OpenJDK 8

Класс OptionalInt

  • java.lang.Object
    • java.util.OptionalInt

public final class OptionalInt
extends Object

Объект-контейнер, который может или не может содержать значение int. Если значение присутствует, isPresent() вернёт true, а getAsInt() вернёт значение.

Предоставляются дополнительные методы, которые зависят от наличия или отсутствия содержащегося значения, такие как orElse() (возвращает значение по умолчанию, если значение отсутствует) и ifPresent() (выполняет блок кода, если значение присутствует).

Это класс с основой на значении; использование операций, чувствительных к идентичности (включая равенство ссылок (==), идентификационный код хэша или синхронизация) на экземплярах OptionalInt может привести к непредсказуемым результатам и должно быть избегаемо.

Since:
1.8

Методы

Модификатор и тип Метод и описание
static OptionalInt empty()

Возвращает пустой экземпляр OptionalInt.

boolean equals(Object obj)

Указывает, является ли другой объект "равным" этому OptionalInt.

int getAsInt()

Если значение присутствует в этом OptionalInt, возвращает значение, в противном случае выбрасывает NoSuchElementException.

int hashCode()

Возвращает значение хэш-кода присутствующего значения, если есть, или 0 (ноль), если значение отсутствует.

void ifPresent(IntConsumer consumer)

Принимает указанный обработчик для значения, если значение присутствует, в противном случае ничего не делает.

boolean isPresent()

Возвращает true, если значение присутствует, в противном случае false.

static OptionalInt of(int value)

Возвращает OptionalInt с указанным присутствующим значением.

int orElse(int other)

Возвращает значение, если оно присутствует, в противном случае возвращает other.

int orElseGet(IntSupplier other)

Возвращает значение, если оно присутствует, в противном случае вызывает other и возвращает результат этого вызова.

<X extends Throwable>
int
orElseThrow(Supplier<X> exceptionSupplier)

Возвращает содержащееся значение, если оно присутствует, в противном случае выбрасывает исключение, созданное предоставленным поставщиком.

String toString()

Возвращает строковое представление объекта.

Методы, унаследованные от класса java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Методы

empty

public static OptionalInt empty()

Возвращает пустой экземпляр OptionalInt. Значение для этого OptionalInt отсутствует.

API Note:
Хотя может быть соблазнительно сделать это, избегайте проверки, пуст ли объект, сравнивая с == с экземплярами, возвращаемыми Option.empty(). Нет гарантии, что это одиночный объект. Вместо этого используйте isPresent().
Returns:
пустой экземпляр OptionalInt

of

public static OptionalInt of(int value)

Возвращает OptionalInt с указанным присутствующим значением.

Parameters:
value - значение, которое должно присутствовать
Returns:
OptionalInt с присутствующим значением

getAsInt

public int getAsInt()

Если значение присутствует в этом OptionalInt, возвращает значение, в противном случае выбрасывает NoSuchElementException.

Returns:
значение, содержащееся в этом OptionalInt
Throws:
NoSuchElementException - если значение не присутствует
See Also:
isPresent()

isPresent

public boolean isPresent()

Возвращает true, если значение присутствует, в противном случае false.

Returns:
true, если значение присутствует, в противном случае false

ifPresent

public void ifPresent(IntConsumer consumer)

Принимает указанный обработчик для значения, если значение присутствует, в противном случае ничего не делает.

Parameters:
consumer - блок, который будет выполнен, если значение присутствует
Throws:
NullPointerException - если значение присутствует и consumer равно null

orElse

public int orElse(int other)

Возвращает значение, если оно присутствует, в противном случае возвращает other.

Parameters:
other - значение, которое должно быть возвращено, если значение не присутствует
Returns:
значение, если присутствует, в противном случае other

orElseGet

public int orElseGet(IntSupplier other)

Возвращает значение, если оно присутствует, в противном случае вызывает other и возвращает результат этого вызова.

Parameters:
other - IntSupplier, результат которого возвращается, если значение не присутствует
Returns:
значение, если присутствует, в противном случае результат other.getAsInt()
Throws:
NullPointerException - если значение не присутствует и other равно null

orElseThrow

public <X extends Throwable> int orElseThrow(Supplier<X> exceptionSupplier)
                                      throws X extends Throwable

Возвращает содержащееся значение, если оно присутствует, в противном случае выбрасывает исключение, созданное предоставленным поставщиком.

API Note:
В качестве поставщика можно использовать ссылку на метод конструктора исключения с пустым списком аргументов. Например, IllegalStateException::new
Type Parameters:
X - Тип исключения, которое должно быть выброшено
Parameters:
exceptionSupplier - Поставщик, который вернёт исключение, которое должно быть выброшено
Returns:
настоящее значение
Throws:
X - если значение не присутствует
NullPointerException - если значение не присутствует и exceptionSupplier равно null
X extends Throwable

equals

public boolean equals(Object obj)

Указывает, является ли другой объект "равным" этому OptionalInt. Другой объект считается равным, если:

  • он также является OptionalInt;
  • оба экземпляра не имеют значения или;
  • присутствующие значения равны друг другу по ==.

Overrides:
equals в классе Object
Parameters:
obj - объект, который должен быть протестирован на равенство
Returns:
{code true} если другой объект "равен" этому объекту, иначе false
See Also:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает значение хэш-кода присутствующего значения, если есть, или 0 (ноль), если значение отсутствует.

Overrides:
hashCode в классе Object
Returns:
значение хэш-кода присутствующего значения или 0, если значение отсутствует
See Also:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

toString

public String toString()

Возвращает строковое представление объекта. В общем случае метод toString возвращает строку, которая «текстуально представляет» этот объект. Результат должен быть кратким, но информативным представлением, удобным для чтения человеком. Рекомендуется переопределять этот метод во всех подклассах.

Метод toString для класса Object возвращает строку, состоящую из имени класса, к которому принадлежит объект, знака `@', и неопределённого шестнадцатеричного представления хэш-кода объекта. Другими словами, этот метод возвращает строку, равную значению:

getClass().getName() + '@' + Integer.toHexString(hashCode())
Возвращает непустое строковое представление этого объекта, подходящее для отладки. Точный формат представления не определён и может различаться между реализациями и версиями.
Overrides:
toString в классе Object
Implementation Requirements:
Если значение присутствует, результат должен включать его строковое представление в результате. Пустые и присутствующие экземпляры должны быть однозначно различимы.
Returns:
строковое представление этого экземпляра

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API