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