public final class OptionalInt extends Object
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).
 
This is a value-based
 class; use of identity-sensitive operations (including reference equality
 (==), identity hash code, or synchronization) on instances of
 OptionalInt may have unpredictable results and should be avoided.
| Modifier and Type | Method and Description | 
|---|---|
| static OptionalInt | empty()Returns an empty  OptionalIntinstance. | 
| 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 throwsNoSuchElementException. | 
| 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  trueif there is a value present, otherwisefalse. | 
| static OptionalInt | of(int value)Return an  OptionalIntwith 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  otherand return
 the result of that invocation. | 
| <X extends Throwable> | 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 representation of the object. | 
public static OptionalInt empty()
OptionalInt instance.  No value is present for this
 OptionalInt.== against instances returned by
 Option.empty(). There is no guarantee that it is a singleton.
 Instead, use isPresent().OptionalIntpublic static OptionalInt of(int value)
OptionalInt with the specified value present.value - the value to be presentOptionalInt with the value presentpublic int getAsInt()
OptionalInt, returns the value,
 otherwise throws NoSuchElementException.OptionalIntNoSuchElementException - if there is no value presentisPresent()public boolean isPresent()
true if there is a value present, otherwise false.true if there is a value present, otherwise falsepublic void ifPresent(IntConsumer consumer)
consumer - block to be executed if a value is presentNullPointerException - if value is present and consumer is
 nullpublic int orElse(int other)
other.other - the value to be returned if there is no value presentotherpublic int orElseGet(IntSupplier other)
other and return
 the result of that invocation.other - a IntSupplier whose result is returned if no value
 is presentother.getAsInt()NullPointerException - if value is not present and other is
 nullpublic <X extends Throwable> int orElseThrow(Supplier<X> exceptionSupplier) throws X extends Throwable
IllegalStateException::newX - Type of the exception to be thrownexceptionSupplier - The supplier which will return the exception to
 be thrownX - if there is no value presentNullPointerException - if no value is present and
 exceptionSupplier is nullX extends Throwablepublic boolean equals(Object obj)
OptionalInt and;
 ==.
 equals in class Objectobj - an object to be tested for equalityfalseObject.hashCode(), 
HashMappublic int hashCode()
hashCode in class ObjectObject.equals(java.lang.Object), 
System.identityHashCode(java.lang.Object)public String toString()
toString method returns a string that
 "textually represents" this object. The result should
 be a concise but informative representation that is easy for a
 person to read.
 It is recommended that all subclasses override this method.
 
 The toString method for class Object
 returns a string consisting of the name of the class of which the
 object is an instance, the at-sign character `@', and
 the unsigned hexadecimal representation of the hash code of the
 object. In other words, this method returns a string equal to the
 value of:
 
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.getClass().getName() + '@' + Integer.toHexString(hashCode())
 Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2015, Oracle and/or its affiliates.  All rights reserved.