如下图所示,代码被IDEA提示‘OptionalInt.getAsInt()’ without ‘isPresent()’ check:

可以用下面的代码验证:

public static void main(String[] args) {IntStream stream = IntStream.builder().build();System.out.println("最大值:" + (stream.max().getAsInt()));
}

在IntStream里没有内容的情况下,getAsInt()引发了空指针异常。

intStream.max()返回值类型是java.util.OptionalInt,用于解决空指针异常问题。

用orElse()替代getAsInt(),可以解决该问题。

public static void main(String[] args) {IntStream stream = IntStream.builder().build();System.out.println("最大值:" + (stream.max().orElse(0)));
}

值得一提的是,解决问题之余,也要思考实际意义。比如,如果没有数值,其最大值设置为默认0是否合理?

【Java】‘OptionalInt.getAsInt()‘ without ‘isPresent()‘ check 的解决方法相关推荐

  1. java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 解决方法 java.lang.ClassNotFoundException: com.

    java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 解决方法 java.lang.ClassNotFoundException: com.m ...

  2. Adobe flash cs5 的Java运行时环境初始化错误 完美解决方法

    Adobe flash cs5 的Java运行时环境初始化错误 完美解决方法 下载网络上的Adobe flash cs5 精简版(绿色版),Java运行时环境初始化时出现错误,你可能需要重装Flash ...

  3. java开发中遇到的问题及解决方法(持续更新)

    java开发中遇到的问题及解决方法(持续更新) 参考文章: (1)java开发中遇到的问题及解决方法(持续更新) (2)https://www.cnblogs.com/LiuYanYGZ/p/6112 ...

  4. Android DialogFragment 遇到 java.lang.IllegalStateException: Fragment already added: 的解决方法

    Android DialogFragment 遇到 java.lang.IllegalStateException: Fragment already added: 的解决方法 参考文章: (1)An ...

  5. Idea运行web项目时,提示java.lang.ClassNotFoundException: com.mysql.jdbc.Driver解决方法

    Idea运行web项目时,提示java.lang.ClassNotFoundException: com.mysql.jdbc.Driver解决方法 参考文章: (1)Idea运行web项目时,提示j ...

  6. java.net.BindException: Address already in use: 解决方法

    java.net.BindException: Address already in use: 解决方法 参考文章: (1)java.net.BindException: Address alread ...

  7. Project facet Java version 1.7 is not supported.解决方法

    Project facet Java version 1.7 is not supported.解决方法 参考文章: (1)Project facet Java version 1.7 is not ...

  8. java.net.NoRouteToHostException: No route to host解决方法

    java.net.NoRouteToHostException: No route to host解决方法 参考文章: (1)java.net.NoRouteToHostException: No r ...

  9. java安装 2203_win7系统无法安装java程序提示“内部错误2203”的解决方法

    win7系统无法安装java程序提示"内部错误2203"的问题发生概率较高.怎样来处理win7系统无法安装java程序提示"内部错误2203"的问题,知道的人估 ...

最新文章

  1. 问题二:相关性怎么引入?
  2. 硬盘由于io设备错误无法运行此项请求_移动硬盘坏了真倒霉,祸不单行U盘也坏了,数据怎么存储才安全?...
  3. 格力的“阵痛”与“头痛”
  4. OpenCASCADE:Android交叉编译 OCCT库
  5. lucene索引创建
  6. 做科研,到底应该看什么?
  7. C/C++ OpenCV之Sobel边缘检测
  8. 8 个 Linux 下 ls 命令的高级用法!个个惊艳!
  9. 未来不迎,当下不杂,过往不恋
  10. mysql中如何复制数据表_MySQL中快速复制数据表方法汇总
  11. 随机森林树的特点--摘抄笔记
  12. 芝诺数解|「八」旅途中的“家”——重庆酒店特征分析
  13. FreeRTOS -- 简介
  14. 【毕业季·进击的技术er】这三年来的风风雨雨,喜怒哀乐,坎坎坷坷,朝朝暮暮……都是那么美好,那么令人难以忘记。
  15. 数据仓库、数据集市、数据湖,你的企业更适合哪种数据管理架构?
  16. 数据分析:销售数据分析如何做?这篇干货收藏备用!
  17. .bxl文件导入Altium Designer的方法,及错误解决
  18. 一元三次方程-盛金公式求解
  19. android township 游戏存档备份,游戏闪退存档全没了?不要怕,可以这样备份与还原游戏存档!...
  20. mysql 魔术设置_09年系统架构师大会中一个mysql小魔术的分析

热门文章

  1. 简单说说USB协议(三)四种传输方式
  2. 404页面跳转到其他页面的安全做法
  3. 控制台实现Atm系统
  4. 博图V17 DB块 导入 昆仑通态屏
  5. 固液混合铝电解电容优势
  6. 学做全屏浮动广告 JS 原生代码
  7. vb.net 教程 3-2 窗体编程之窗体 3
  8. 产品经理基础--02需求收集需求管理
  9. 【string】字符串分割strock
  10. gomail发送邮件报:x509: certificate signed by unknown authority的解决方法