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

📅  最后修改于: 2023-12-03 15:16:25.768000             🧑  作者: Mango

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

在Java 8中,引入了Optional类,用于解决null值的问题,避免了空指针异常的产生。在Optional类中,还有一些方法可以用于判断Optional对象是否为空或存在值。其中一个方法就是ifPresentOrElse()。

OptionalLong ifPresentOrElse() 方法

ifPresentOrElse()方法接收两个参数:一个Consumer对象和一个Runnable对象。如果OptionalLong对象存在值,则执行Consumer对象的操作;否则执行Runnable对象的操作。

方法定义如下:

public void ifPresentOrElse(LongConsumer action, Runnable emptyAction)
示例

下面的示例展示了如何使用ifPresentOrElse()方法来处理OptionalLong对象。

import java.util.OptionalLong;

public class OptionalLongExample {
    public static void main(String[] args) {

        // 创建一个OptionalLong对象,包含一个值
        OptionalLong optional = OptionalLong.of(5);

        // 使用ifPresentOrElse方法,如果值存在,则打印该值;否则,打印"Value is not present"
        optional.ifPresentOrElse(System.out::println, () -> System.out.println("Value is not present"));

        // 创建一个空的OptionalLong对象
        OptionalLong emptyOptional = OptionalLong.empty();

        // 使用ifPresentOrElse方法,如果值存在,则打印该值;否则,打印"Value is not present"
        emptyOptional.ifPresentOrElse(System.out::println, () -> System.out.println("Value is not present"));
    }
}

输出:

5
Value is not present

上述代码中,我们首先创建了一个OptionalLong对象,包含一个值。然后使用ifPresentOrElse()方法来判断是否存在值,并执行对应的操作。

接着,我们创建了一个空的OptionalLong对象,并使用ifPresentOrElse()方法对其进行操作,结果输出了"Value is not present"。

总之,通过ifPresentOrElse()方法,我们可以更方便地处理OptionalLong对象,避免了空指针异常的产生。