博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.13 基本类型流
阅读量:6241 次
发布时间:2019-06-22

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

1.13 基本类型流

到目前为止,我们都是将整数收集到Stream中,尽管很明显,将每个整数都包装到包装器对象中是很低效的。对其他基本类型来说,情况也是一样,这些基本类型是:double、f?loat、long、short、char、byte和boolean。流库中具有专门的类型IntStream、LongStream和DoubleStream,用来直接存储基本类型值,而无需使用包装器。如果想要存储short、char、byte和boolean,可以使用IntStream,而对于f?loat,可以使用DoubleStream。

为了创建IntStream,需要调用IntStream.of和Arrays.stream方法:
image

与对象流一样,我们还可以使用静态的generate和iterate方法。此外,IntStream和LongStream有静态方法range和rangeClosed,可以生成步长为1的整数范围:

image

CharSequence接口拥有codePoints和chars方法,可以生成由字符的Unicode码或由UTF-16编码机制的码元构成的IntStream。(请参见第2章以了解其复杂的细节。)

image

当你有一个对象流时,可以用mapToInt、mapToLong和mapToDouble将其转换为基本类型流。例如,如果你有一个字符串流,并想将其长度处理为整数,那么就可以在IntStream中实现此目的:

image

为了将基本类型流转换为对象流,需要使用boxed方法:

image

image

注意:Random类具有ints、longs和doubles方法,它们会返回由随机数构成的基本类型流。

程序清单1-7给出了基本类型流的API的示例。

程序清单1-7 streams/PrimitiveTypeStreams.java
image
image

java.util.stream.IntStream 8

image

java.util.stream.DoubleStream 8

image

image

image

转载地址:http://dvcia.baihongyu.com/

你可能感兴趣的文章
计算机高手也不能编出俄罗斯方块——计算机达人成长之路(16)
查看>>
# 2017-2018-1 20155224 《信息安全系统设计基础》第七周学习总结
查看>>
scikit-learn预处理实例之一:使用FunctionTransformer选择列
查看>>
邮件客户端导入邮件通讯录地址薄
查看>>
Linux系统安装
查看>>
Cassandra监控 - OpsCenter手册
查看>>
一些关于写Java代码的建议
查看>>
网络社交如何保护个人隐私?做好这4步
查看>>
SQL*Plus中的Echo
查看>>
SEO基础知识8大精华文章之第一篇(连载)
查看>>
面向sql编程
查看>>
对前面的自定义的toast制作拖拽效果,以及双击居中效果
查看>>
如何规划构建一套大型的Citrix桌面虚拟化架构 - 后记
查看>>
animationFromTop
查看>>
SEM如何做数据分析?
查看>>
语音转文字如何在线转换的?
查看>>
PXE批量实现自动化安装系统
查看>>
tomcat内存溢出的解决方法(java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError:)...
查看>>
为域用户创建漫游用户配置文件
查看>>
sql server 第二讲
查看>>