Java OptionalLong ifPresentOrElse()方法及示例
ifPresentOrElse(java.util.function.LongConsumer , java.lang.Runnable) 方法帮助我们执行指定的LongConsumer动作,该OptionalLong对象的值。如果这个OptionalLong对象中不存在一个值,那么这个方法就会执行给定的基于空的Runnable emptyAction,作为第二个参数传递。
语法
public void ifPresentOrElse(LongConsumer action,
Runnable emptyAction)
参数: 该方法接受两个参数。
- action:如果有一个值,这是要在这个Optional上执行的操作。
- emptyAction:如果没有值,将执行的基于空的动作。
返回值: 此方法不返回任何东西。
异常: 如果有一个值存在而给定的动作是空的,或者没有值存在而给定的基于空的动作是空的,则该方法抛出 NullPolongerException 。
以下程序说明了ifPresentOrElse()方法:
程序1 :
// Java program to demonstrate
// OptionalLong.ifPresentOrElse() method
import java.util.OptionalLong;
public class GFG {
public static void main(String[] args)
{
// create a OptionalLong
OptionalLong oplong = OptionalLong.of(12);
// apply ifPresentOrElse
oplong.ifPresentOrElse(
(value)
-> { System.out.println("Value is present, its: "
+ value); },
()
-> { System.out.println("Value is empty"); });
}
}
输出
Value is present, its: 12
程序2
// Java program to demonstrate
// OptionalLong.ifPresentOrElse method
import java.util.OptionalLong;
public class GFG {
public static void main(String[] args)
{
// create a OptionalLong
OptionalLong oplong = OptionalLong.empty();
// apply ifPresentOrElse
oplong.ifPresentOrElse(
(value)
-> { System.out.println("Value is present, its: "
+ value); },
()
-> { System.out.println("Value is empty"); });
}
}
输出
Value is empty
**参考资料: ** https://docs.oracle.com/javase/10/docs/api/java/util/OptionalLong.html#ifPresentOrElse(java.util.function.LongConsumer, java.lang.Runnable)