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)