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)
