OptionalInt

public final class OptionalInt extends Object

A container object which may or may not contain a int value. If a value is present, isPresent() will return true and getAsInt() will return the value.

Additional methods that depend on the presence or absence of a contained value are provided, such as orElse() (return a default value if value not present) and ifPresent() (execute a block of code if the value is present).

Public Method Summary

static OptionalInt
empty()
Returns an empty OptionalInt instance.
boolean
equals(Object obj)
Indicates whether some other object is "equal to" this OptionalInt.
int
getAsInt()
If a value is present in this OptionalInt, returns the value, otherwise throws NoSuchElementException.
int
hashCode()
Returns the hash code value of the present value, if any, or 0 (zero) if no value is present.
void
ifPresent(IntConsumer consumer)
Have the specified consumer accept the value if a value is present, otherwise do nothing.
boolean
isPresent()
Return true if there is a value present, otherwise false.
static OptionalInt
of(int value)
Return an OptionalInt with the specified value present.
int
orElse(int other)
Return the value if present, otherwise return other.
int
orElseGet(IntSupplier other)
Return the value if present, otherwise invoke other and return the result of that invocation.
<X extends Throwable> int
orElseThrow(Supplier<X> exceptionSupplier)
Return the contained value, if present, otherwise throw an exception to be created by the provided supplier.
String
toString()
Returns a string containing a concise, human-readable description of this object. Returns a non-empty string representation of this object suitable for debugging.

Inherited Method Summary

Public Methods

public static OptionalInt empty ()

Returns an empty OptionalInt instance. No value is present for this OptionalInt.

Returns
  • an empty OptionalInt

public boolean equals (Object obj)

Indicates whether some other object is "equal to" this OptionalInt. The other object is considered equal if:

  • it is also an OptionalInt and;
  • both instances have no value present or;
  • the present values are "equal to" each other via ==.

Parameters
obj an object to be tested for equality
Returns
  • {code true} if the other object is "equal to" this object otherwise false

public int getAsInt ()

If a value is present in this OptionalInt, returns the value, otherwise throws NoSuchElementException.

Returns
  • the value held by this OptionalInt
Throws
NoSuchElementException if there is no value present
See Also

public int hashCode ()

Returns the hash code value of the present value, if any, or 0 (zero) if no value is present.

Returns
  • hash code value of the present value or 0 if no value is present

public void ifPresent (IntConsumer consumer)

Have the specified consumer accept the value if a value is present, otherwise do nothing.

Parameters
consumer block to be executed if a value is present
Throws
NullPointerException if value is present and consumer is null

public boolean isPresent ()

Return true if there is a value present, otherwise false.

Returns
  • true if there is a value present, otherwise false

public static OptionalInt of (int value)

Return an OptionalInt with the specified value present.

Parameters
value the value to be present
Returns
  • an OptionalInt with the value present

public int orElse (int other)

Return the value if present, otherwise return other.

Parameters
other the value to be returned if there is no value present
Returns
  • the value, if present, otherwise other

public int orElseGet (IntSupplier other)

Return the value if present, otherwise invoke other and return the result of that invocation.

Parameters
other a IntSupplier whose result is returned if no value is present
Returns
  • the value if present otherwise the result of other.getAsInt()
Throws
NullPointerException if value is not present and other is null

public int orElseThrow (Supplier<X> exceptionSupplier)

Return the contained value, if present, otherwise throw an exception to be created by the provided supplier.

Parameters
exceptionSupplier The supplier which will return the exception to be thrown
Returns
  • the present value
Throws
if there is no value present
NullPointerException if no value is present and exceptionSupplier is null
Throwable

public String toString ()

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method. Returns a non-empty string representation of this object suitable for debugging. The exact presentation format is unspecified and may vary between implementations and versions.

Returns
  • the string representation of this instance