<JAVA8实战>学习笔记1-流与集合的区别
来源:互联网 发布:linux如何连接数据库 编辑:程序博客网 时间:2024/06/16 08:15
流和集合的区别
1、集合与流之间的差异就在于什么时候进行计算
集合是一个内存中的数据结构,它包含数据结构中目前所有的值——集合中的每个元素都得先算出来才能添加到集合中。(你可以往集合里加东西或者删东西,但是不管什么时候,集合中的每个元素都是放在内存里的,元素都得先算出来才能成为集合的一部分。)
相比之下,流则是在概念上固定的数据结构(你不能添加或删除元素),其元素则是按需计算的。
2、集合和流的另一个关键区别在于它们遍历数据的方式
使用Collection接口需要用户去做迭代(比如用for-each),这称为外部迭代。相反,Streams库使用内部迭代——它帮你把迭代做了,还把得到的流值存在了某个地方,你只要给出一个函数说要干什么就可以了。Steams库的内部迭代可以自动选择一种适合你硬件的数据表示和并行实现。
3、流只能遍历一次
和迭代器类似,流只能遍历一次。
阅读全文
0 0
- <JAVA8实战>学习笔记1-流与集合的区别
- java8 流的使用学习笔记
- Java8实战 阅读笔记
- Java8学习笔记(三)-Lambda表达式深入与流初步
- <JAVA8实战>学习笔记2-数据处理好工具Stream
- 集合源码学习(十):HashTable(Java8)与HashMap比较
- Java8 集合的遍历
- Java8 实战学习 方法引用
- java8的新特性学习笔记一
- 【java学习笔记】java8的新特性
- java8 Lambda表达式的学习与测试
- java8 Stream学习笔记
- java8 stream学习笔记
- ConcurrentHashMap学习笔记(Java8)
- JAVA8学习笔记-function
- java8 注解学习笔记
- Java8学习笔记
- JAVA8学习笔记-Function
- 当当VP陈立均:当当图书三季度市场份额以45%遥遥领先,四季度开启18周年庆回馈读者阅读盛宴
- 误删了ubuntu的当前image该怎么办
- [转自Oracle官方技术博客]为什么数据库中大量的server process没有对应的session?
- 灾后重建及变式
- linux常用命令
- <JAVA8实战>学习笔记1-流与集合的区别
- python使用openpyxl插入excel批注,同时修改excel批注框大小
- kafka启动无法加载主类
- Android中startActivityForResult的一种特殊使用
- Android倒计时类CountDownTimer的简单使用
- servlet常见初学问题
- 树莓派3B+ 安装计算机视觉库(OpenCV_3+OpenCV_Contrib_3)
- c语言操作符和表达式
- 计算并输出一个个位、十位、百位数字之和