Java OptionalInt orElseGet()方法及示例
orElseGet( java.util.function.IntSupplier ) 方法帮助我们获得这个OptionalInt对象中的值。如果这个OptionalInt对象中不存在一个值,那么这个方法就会返回作为参数传递的供应函数所产生的结果。
语法
public int orElseGet(IntSupplier supplier)
参数: 该方法接受产生一个要返回的值的供应函数。
返回值: 如果存在,该方法返回int值,否则返回供应函数产生的结果。
异常: 如果没有值并且提供的函数是空的,该方法会抛出 NullPointerException 。
下面的程序说明了orElseGet( java.util.function.IntSupplier ) 方法。
程序1 :
// Java program to demonstrate
// OptionalInt.orElseGet(IntSupplier) method
import java.util.OptionalInt;
public class GFG {
public static void main(String[] args)
{
// create a OptionalInt
OptionalInt opint = OptionalInt.of(2134);
// get value using orElseGet
int value = opint.orElseGet(() -> getintValue());
// print value
System.out.println("value: " + value);
}
public static int getintValue()
{
return 3242 + 123;
}
}
输出。
value: 2134
程序2
// Java program to demonstrate
// OptionalInt.orElseGet(IntSupplier) method
import java.util.OptionalInt;
public class GFG {
public static void main(String[] args)
{
// create a OptionalInt
OptionalInt opint = OptionalInt.empty();
// get value using orElseGet
int value = opint.orElseGet(() -> getintValue());
// print value
System.out.println("value: " + value);
}
public static int getintValue()
{
return 3242 * 234;
}
}
输出。
value: 758628
**参考资料: ** https://docs.oracle.com/javase/10/docs/api/java/util/OptionalInt.html#orElseGet(java.util.function.IntSupplier)