OptionalInt

class OptionalInt
kotlin.Any
   ↳ java.util.OptionalInt

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).
Requires API level 24 (Android 7.0, Nougat)

Summary

Public methods
Boolean

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

Int

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

Boolean
equals(other: Any?)

Indicates whether some other object is "equal to" this OptionalInt.

String

Returns a string representation of the object.

Unit
ifPresent(consumer: IntConsumer!)

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

Int

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

Int

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

Int
orElseThrow(exceptionSupplier: Supplier<X>!)

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

Int
orElse(other: Int)

Return the value if present, otherwise return other.

static OptionalInt!

Returns an empty OptionalInt instance.

static OptionalInt!
of(value: Int)

Return an OptionalInt with the specified value present.

Public methods

isPresent

added in API level 24
fun isPresent(): Boolean

Return true if there is a value present, otherwise false.
Requires API level 24 (Android 7.0, Nougat)

Return
Boolean: true if there is a value present, otherwise false

hashCode

added in API level 24
fun hashCode(): Int

Returns the hash code value of the present value, if any, or 0 (zero) if no value is present.
Requires API level 24 (Android 7.0, Nougat)

Return
Int: hash code value of the present value or 0 if no value is present

equals

added in API level 24
fun equals(other: Any?): Boolean

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 ==.

Requires API level 24 (Android 7.0, Nougat)

Parameters
obj Any?: an object to be tested for equality
Return
Boolean: {code true} if the other object is "equal to" this object otherwise false

toString

added in API level 24
fun toString(): String

Returns a string representation of the object. In general, the 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:

 getClass().getName() + '@' + Integer.toHexString(hashCode()) 
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.
Requires API level 24 (Android 7.0, Nougat)
Return
String: the string representation of this instance

ifPresent

added in API level 24
fun ifPresent(consumer: IntConsumer!): Unit

Have the specified consumer accept the value if a value is present, otherwise do nothing.
Requires API level 24 (Android 7.0, Nougat)

Parameters
consumer IntConsumer!: block to be executed if a value is present
Exceptions
NullPointerException if value is present and consumer is null

orElseGet

added in API level 24
fun orElseGet(other: IntSupplier!): Int

Return the value if present, otherwise invoke other and return the result of that invocation.
Requires API level 24 (Android 7.0, Nougat)

Parameters
other IntSupplier!: a IntSupplier whose result is returned if no value is present
Return
Int: the value if present otherwise the result of other.getAsInt()
Exceptions
NullPointerException if value is not present and other is null

getAsInt

added in API level 24
fun getAsInt(): Int

If a value is present in this OptionalInt, returns the value, otherwise throws NoSuchElementException.
Requires API level 24 (Android 7.0, Nougat)

Return
Int: the value held by this OptionalInt
Exceptions
NoSuchElementException if there is no value present

orElseThrow

added in API level 24
fun <X : Throwable!> orElseThrow(exceptionSupplier: Supplier<X>!): Int

Return the contained value, if present, otherwise throw an exception to be created by the provided supplier.
Requires API level 24 (Android 7.0, Nougat)

Parameters
<X> Supplier<X>!: Type of the exception to be thrown
exceptionSupplier Supplier<X>!: The supplier which will return the exception to be thrown
Return
Int: the present value
Exceptions
X if there is no value present
NullPointerException if no value is present and exceptionSupplier is null

orElse

added in API level 24
fun orElse(other: Int): Int

Return the value if present, otherwise return other.
Requires API level 24 (Android 7.0, Nougat)

Parameters
other Int: the value to be returned if there is no value present
Return
Int: the value, if present, otherwise other

empty

added in API level 24
static fun empty(): OptionalInt!

Returns an empty OptionalInt instance. No value is present for this OptionalInt.
Requires API level 24 (Android 7.0, Nougat)

Return
OptionalInt!: an empty OptionalInt

of

added in API level 24
static fun of(value: Int): OptionalInt!

Return an OptionalInt with the specified value present.
Requires API level 24 (Android 7.0, Nougat)

Parameters
value Int: the value to be present
Return
OptionalInt!: an OptionalInt with the value present