博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java中Optional和Stream流的部分操作
阅读量:6830 次
发布时间:2019-06-26

本文共 1816 字,大约阅读时间需要 6 分钟。

package test9;import java.util.DoubleSummaryStatistics;import java.util.Optional;import java.util.stream.Collectors;import java.util.stream.Stream;public class StreamTest {    public static void main(String[] args) {        Optional
optional = Optional.of(123); System.out.println("创建一个Optional对象的方式一:" + optional.get()); Optional
optional2 = Optional.ofNullable(null); System.out.println("Optional操作:对象是否为空:" + !optional2.isPresent()); Optional
result = Optional.of(4.0).flatMap(StreamTest::squareRoot).flatMap(StreamTest::inverse); System.out.println("Optional操作:flatMap可以循环调用其中的方法,4.0的平方根处以2是:" + result.get()); String str = Stream.of("一", "二", "三", "四", "五", "六").collect(Collectors.joining(","));// joining参数可为空,即结果中将没有"," System.out.println("流操作:将此流中的所有元素组合成一条字符串返回:\t" + str); DoubleSummaryStatistics summary = Stream.of(12, 10, 54, 8, 132, 589, 4) .collect(Collectors.summarizingDouble(Integer::intValue)); System.out.println("流操作:最大值:" + summary.getMax() + "\t最小值:" + summary.getMin() + "\t平均值:" + summary.getAverage() + "\t总和:" + summary.getSum() + "\t元素的个数:" + summary.getCount()); } // 计算平方根 private static Optional
squareRoot(Double x) { return x < 0 ? Optional.empty() : Optional.of(Math.sqrt(x)); } private static Optional
inverse(Double x) { return x == 0 ? Optional.empty() : Optional.of(x / 2); } }

打印结果:

创建一个Optional对象的方式一:123

Optional操作:对象是否为空:true

Optional操作:flatMap可以循环调用其中的方法,4.0的平方根处以2是:1.0

流操作:将此流中的所有元素组合成一条字符串返回: 一,二,三,四,五,六

流操作:最大值:589.0 最小值:4.0 平均值:115.57142857142857 总和:809.0 元素的个数:7

 

转载于:https://www.cnblogs.com/li-yan-long/p/10339143.html

你可能感兴趣的文章
SHIFT后门拿服务器之方法总结
查看>>
【问题&解决】手机网页Html代码实现(解决显示页面很小的问题)
查看>>
微信利用PHP创建自定义菜单的方法
查看>>
计算机是如何启动的?
查看>>
Origami
查看>>
初试ASP.NET Web API/MVC API(附Demo)
查看>>
java开发_模仿百度文库_OpenOffice2PDF_注意事项
查看>>
jQuery 效果 - animate() 方法
查看>>
【记录】恢复win7与ARM开发板TQ2440的串口连接
查看>>
HTTP协议详解(转)
查看>>
Java关键字final、static使用总结
查看>>
JavaScript学习总结(十四)——JavaScript编写类的扩展方法
查看>>
Android数据存储
查看>>
JavaScript网站设计实践(五)编写photos.html页面,实现点击缩略图显示大图的效果...
查看>>
[再寄小读者之数学篇](2014-05-20 一个分部积分)
查看>>
Java httpclient请求,解决乱码问题
查看>>
IE10、IE11 无法写入Cookie
查看>>
汉化Eclipse+配色方法(官方语言包)
查看>>
Ansi,UTF8,Unicode,ASCII编码的差别
查看>>
【delphi】Delphi过程、函数传递参数的八种方式
查看>>