在线工具站
- 推荐一个程序员在线工具站:程序员常用工具(http://cxytools.com),有时间戳、JSON格式化、文本对比、HASH生成、UUID生成等常用工具,效率加倍嘎嘎好用。
程序员资料站
- 推荐一个程序员编程资料站:程序员的成长之路(http://cxyroad.com),收录了一些列的技术教程、各大面试专题,还有常用开发工具的教程。
小报童专栏精选Top100
- 推荐一个小报童专栏导航站:小报童精选Top100(http://xbt100.top),收录了生财有术项目精选、AI海外赚钱、纯银的产品分析等专栏,陆续会收录更多的专栏,欢迎体验~
在现代 Java 编程中,处理可能不存在的值是一项重要的任务。为了减少空指针异常 (NullPointerException
) 的发生,Java 8 引入了 Optional
类来优雅地处理空值情况。针对基本数据类型,Java 还提供了 OptionalInt
、OptionalLong
和 OptionalDouble
等专门类。
1. OptionalLong
类概述
1.1 定义与作用
OptionalLong
是 java.util
包中的一个最终类,用于表示可能存在也可能不存在的 long
类型值。与 Optional<T>
类不同,OptionalLong
专门用于处理 long
类型的值,这避免了自动装箱和拆箱的性能开销。
public final class OptionalLong extends Object
1.2 使用场景
OptionalLong
主要用于在方法返回值、数据处理、计算结果等场景中,表示可能为空的 long
值。例如,在处理大型数据集或统计分析时,使用 OptionalLong
可以有效避免 null
引发的错误。
2. OptionalLong
类的常用方法
2.1 创建 OptionalLong
实例
empty
empty
方法用于创建一个不包含值的空 OptionalLong
实例。
OptionalLong optional = OptionalLong.empty();
of
of
方法用于创建一个包含指定 long
值的 OptionalLong
实例。
OptionalLong optional = OptionalLong.of(100L);
2.2 检查值是否存在
isPresent
isPresent
方法用于检查 OptionalLong
中是否包含值。
OptionalLong optional = OptionalLong.of(100L);
if (optional.isPresent()) {
System.out.println("Value is present");
}
ifPresent
ifPresent
方法在值存在时执行给定的操作。