Java中的Optional类使用技巧

在Java中,Optional 是一个可以为null的容器对象。如果值存在则isPresent()方法返回true,调用get()方法会返回该对象。

使用Optional可以有效地防止NullPointerException。

下面是一些使用Optional的技巧:

  1. 创建Optional对象:

    复制代码
    Optional<String> optional = Optional.of("bam");
  2. 如果值存在则调用方法 :

    可以使用 ifPresent 方法在值存在时执行某个操作。

    复制代码
    optional.ifPresent((s) -> System.out.println(s.charAt(0)));
  3. 检查值是否存在 :

    使用 isPresent() 方法检查值是否存在。

    复制代码
    if (optional.isPresent()) {   
        System.out.println(optional.get());   
    } else {   
        System.out.println("No value");   
    }
  4. 使用orElse或orElseGet方法提供默认值 :

    如果值不存在,可以使用 orElse 或 orElseGet 方法提供一个默认值。

    复制代码
    String str = optional.orElse("fallback");
  5. 使用map和filter方法 :

    可以使用 map 和 filter 方法对值进行操作。例如,将一个字符串转换为大写。

    复制代码
    Optional<String> upperOptional = optional.map((s) -> s.toUpperCase());
  6. 使用flatMap方法 :
    如果值是一个集合,可以使用 flatMap 方法将多个Optional对象合并为一个。

  7. 使用orElseThrow方法抛出异常 :
    如果值不存在,可以使用 orElseThrow 方法抛出一个异常。

  8. 使用stream方法处理值 :
    可以使用 stream 方法将Optional对象转换为Stream对象,以便进行复杂的操作。例如,计算长度或过滤特定字符。

  9. 使用ifEmpty方法处理空值 :
    可以使用 ifEmpty 方法在值不存在时执行某个操作。例如,设置一个默认值或抛出一个异常。

  10. 使用or方法合并两个Optional对象:如果当前Optional对象为空,则返回另一个Optional对象。如果当前Optional对象不为空,则返回当前Optional对象。这可以用于合并两个可能都为空的Optional对象。

相关推荐
程序猿_极客3 分钟前
【免费】分享一套优质的基于SpringBoot的服装商城管理系统的设计与实现(带可视化图表、协同过滤功能),源码+文档+视频详解(讲解)
java·spring boot·后端·服装商城管理系统
adinnet20265 分钟前
保单、赔付与渠道问数:保险经营数据如何实现按需查询
大数据·数据库·人工智能
wuyk55510 分钟前
《WiFi 嵌入式物联网开发全套实战》| 第 31 章 休眠唤醒 WiFi 断连、时间同步、网络恢复机制
网络·物联网·php
泡海椒12 分钟前
JQuick-Excel 实战:FORMAT 管理日期与数字的 Excel 显示
开发语言·python·excel
用户37215742613524 分钟前
Java 查找并高亮 Word 文字:精确查找及正则表达式模糊查找
java
云贝贝贝35 分钟前
PostgreSQL 分区表:从设计到运维,大表不再卡
运维·数据库·postgresql
oradh35 分钟前
Oracle固定执行计划的方法---SQL Plan Baseline
数据库·sql·oracle
数据库小学妹41 分钟前
数据库高可用演练怎么做?稳态定义、注入点与中止条件
数据库·rto·高可用架构·运维体系·故障演练·容灾切换
zyseo842 分钟前
谷歌SEO 站内搜索优化实战:把站内搜索词变成关键词金矿
java·服务器·数据库
qq_4017004143 分钟前
Qt 串口/网口通信:Hex 与 ASCII 编码转换深度指南
开发语言·数据库·qt