📌  相关文章
📜  Java中的 OptionalDouble ifPresentOrElse() 方法及示例

📅  最后修改于: 2022-05-13 01:55:26.224000             🧑  作者: Mango

Java中的 OptionalDouble ifPresentOrElse() 方法及示例

ifPresentOrElse(Java 函数.DoubleConsumer, Java .lang.Runnable)方法帮助我们执行指定的 DoubleConsumer 操作这个 OptionalDouble 对象的值。如果此 OptionalDouble 中不存在值,则此方法执行给定的基于空的 Runnable emptyAction,作为第二个参数传递

句法:

public void ifPresentOrElse(DoubleConsumer action,
                            Runnable emptyAction)

参数:此方法接受两个参数:

  • action :如果存在值,这是要在此 Optional 上执行的操作。
  • emptyAction :如果不存在值,这是要执行的基于空的操作。

返回值:此方法不返回任何内容。

异常:如果存在值且给定操作为 null,或者不存在值且给定的基于空的操作为 null,则此方法抛出NullPodoubleerException

下面的程序说明了 ifPresentOrElse() 方法:
方案一:

// Java program to demonstrate
// OptionalDouble.ifPresentOrElse() method
  
import java.util.OptionalDouble;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // create a OptionalDouble
        OptionalDouble opdouble
            = OptionalDouble.of(234543.23453);
  
        // apply ifPresentOrElse
        opdouble.ifPresentOrElse(
            (value)
                -> { System.out.println(
                         "Value is present, its: "
                         + value); },
            ()
                -> { System.out.println(
                         "Value is empty"); });
    }
}

输出:

Value is present, its: 12

方案二:

// Java program to demonstrate
// OptionalDouble.ifPresentOrElse method
import java.util.OptionalDouble;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // create a OptionalDouble
        OptionalDouble opdouble
            = OptionalDouble.empty();
  
        // apply ifPresentOrElse
        opdouble.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 函数 Java .DoubleConsumer, Java Java)