public final class OptionalInt
extends Object
java.lang.Object | |
↳ | java.util.OptionalInt |
容器对象,可能包含或不包含int
值。 如果值存在, isPresent()
将返回true
和getAsInt()
将返回值。
还提供了依赖于包含值是否存在的其他方法,例如 orElse()
(如果值不存在则返回默认值)和 ifPresent()
(如果值存在, ifPresent()
执行一个代码块)。
Public methods |
|
---|---|
static OptionalInt |
empty() 返回一个空的 |
boolean |
equals(Object obj) 指示某个其他对象是否“等于”此可选项。 |
int |
getAsInt() 如果此值为 |
int |
hashCode() 返回当前值的哈希码值(如果有的话),如果没有值,则返回0(零)。 |
void |
ifPresent(IntConsumer consumer) 如果存在值,指定的消费者接受该值,否则不执行任何操作。 |
boolean |
isPresent() 如果存在值,则返回 |
static OptionalInt |
of(int value) 用指定的值返回 |
int |
orElse(int other) 返回值如果存在,否则返回 |
int |
orElseGet(IntSupplier other) 返回值如果存在,否则调用 |
<X extends Throwable> int |
orElseThrow(Supplier<X> exceptionSupplier) 返回包含的值(如果存在),否则抛出由提供的供应商创建的异常。 |
String |
toString() 返回对象的字符串表示形式。 返回适合调试的此对象的非空字符串表示形式。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
OptionalInt empty ()
返回一个空的OptionalInt
实例。 这个OptionalInt没有值。
==
against instances returned by Option.empty()
. There is no guarantee that it is a singleton. Instead, use isPresent()
.Returns | |
---|---|
OptionalInt |
an empty OptionalInt |
boolean equals (Object obj)
指示某个其他对象是否“等于”此可选项。 另一个对象被认为是相等的,如果:
OptionalInt
and; ==
. Parameters | |
---|---|
obj |
Object : an object to be tested for equality |
Returns | |
---|---|
boolean |
{code true} if the other object is "equal to" this object otherwise false |
int getAsInt ()
如果此值为 OptionalInt
,则返回该值,否则返回 NoSuchElementException
。
Returns | |
---|---|
int |
the value held by this OptionalInt |
Throws | |
---|---|
NoSuchElementException |
if there is no value present |
也可以看看:
int hashCode ()
返回当前值的哈希码值(如果有的话),如果没有值,则返回0(零)。
Returns | |
---|---|
int |
hash code value of the present value or 0 if no value is present |
void ifPresent (IntConsumer consumer)
如果存在值,指定的消费者接受该值,否则不执行任何操作。
Parameters | |
---|---|
consumer |
IntConsumer : block to be executed if a value is present |
Throws | |
---|---|
NullPointerException |
if value is present and consumer is null |
boolean isPresent ()
如果存在值,则返回 true
,否则 false
。
Returns | |
---|---|
boolean |
true if there is a value present, otherwise false |
OptionalInt of (int value)
用指定的值返回 OptionalInt
。
Parameters | |
---|---|
value |
int : the value to be present |
Returns | |
---|---|
OptionalInt |
an OptionalInt with the value present |
int orElse (int other)
返回值如果存在,否则返回 other
。
Parameters | |
---|---|
other |
int : the value to be returned if there is no value present |
Returns | |
---|---|
int |
the value, if present, otherwise other |
int orElseGet (IntSupplier other)
返回值如果存在,否则调用 other
并返回该调用的结果。
Parameters | |
---|---|
other |
IntSupplier : a IntSupplier whose result is returned if no value is present |
Returns | |
---|---|
int |
the value if present otherwise the result of other.getAsInt() |
Throws | |
---|---|
NullPointerException |
if value is not present and other is null |
int orElseThrow (Supplier<X> exceptionSupplier)
返回包含的值(如果存在),否则抛出由提供的供应商创建的异常。
IllegalStateException::new
Parameters | |
---|---|
exceptionSupplier |
Supplier : The supplier which will return the exception to be thrown |
Returns | |
---|---|
int |
the present value |
Throws | |
---|---|
|
if there is no value present |
NullPointerException |
if no value is present and exceptionSupplier is null |
Throwable |
String toString ()
返回对象的字符串表示形式。 通常, toString
方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object
的toString
方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @
”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
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())
Returns | |
---|---|
String |
the string representation of this instance |