Stram流 - 随笔
函数式编程
注重函数 - 关注对数据进行了什么操作
流
中间操作


去重
authors.stream()
.distinct()
;
查询指定匹配
.filter(new Predicate<Author>() {
@Override
public boolean test(Author author) {
author.getAge() == 18;
}
})
Lambda优化=>
.filter(author -> author.getAge() == 18)
转换流当中的类型
.map
排序
不能有重复 - .sorted()
降序
空参 - 实现compareble接口
有参-
限制流的最大长度
limit -
跳过前n个元素, 返回剩下的元素
.skip
取出一个新的流 - 新类型
map只能把一个对象转换成另一个对象来作为流中的元素。而flatMap可以把一个对象转换成多个对象作为流中的元素。
.flatMap
终结操作
遍历
forEach(new Consumer<Author>() {
@Override
public void accept(Author author) {
System.out.println(author.getName());
}
});
Lambda优化=>
.forEach(author -> System.out.println(author.getName()))
获取当前流中的元素的个数
.cout
求流中的最大最小值
.max
.min
把当前流转换成一个集合
.collect(Collectors.toList)
.collect(Collectors.toSet)
.collect(Collectors.toMap(a->a.getKey, a->a.getValue))
查找与匹配
.anyMatch(匿名内部类- 判断条件)
.allMatch()
.findAny
.findFirst
归并
reduce
内部操作流程

Stram流 - 随笔的更多相关文章
- stram流char[]保存,支持中文,Filestram需要先转byte[]才能使用,但是性能更好《转载》
学习流的使用时(stream类),逐步遇到新的理解,记录一下 1.FileStream流是处理byte[],默认UTF8类型 当你使用wirte方法时将非byte类型的输入内容,先将内容通过转换为字节 ...
- WEB API 用MemoryStream流做下载功能
刚开始把MemoryStream 放在 var streamResult = new MemoryStream(); HttpResponseMessage response = new HttpRe ...
- 这么简单,还不会使用java8 stream流的map()方法吗?
一.前言 在日常的开发工作中经常碰到要处理list中数据的问题,比如从数据库中查出了很多学生,由于一些原因需要在内存中找出这些学生中的所有姓名,或者把名为"王五"的语文成绩暂时修改 ...
- java中的stream的泛型方法的使用示例
本文章使用jdk8测试 ,并结合使用lambda测试 测试前准备一些测试数据: class ObjectDemo { private Integer id; private String name; ...
- Java 1.8 Stream 用例测试
package stream; import model.Student; import org.junit.jupiter.api.Test; import java.util.*; import ...
- java I/O流 温习随笔
java I/O流的熟练掌握是十分重要的. 在我的理解中,I/O流可以分为两种:字符流.字节流.字符流就是可以用来传输字符的流,比如传输txt文本,简单的说,只有能被电脑中的记事本直接打开并且你能看懂 ...
- css随笔1
1.简单清除浏览器样式 *{ padding: 0px; margin: 0px; } 2.得到屏幕范围的div html,body{ width: 1 ...
- web前端学习随笔
为什么是随笔 好好算下来,学习web前端已有半个月了,这半个月来主要学习的是HTML和CSS部分,期间有困惑,也有解决困惑时的快感,所以想把这段时间感受到的一些东西记下来,因为内容比较杂,所以干脆叫随 ...
- a冲刺总结随笔
Alpha版本计划完成一般的便签功能: 预期项目 实际进展 首页瀑布流方块布局 1 按新旧顺序排列 1 增加记录 1 编辑文字信息 1 标记喜爱 0 删除文字信息 1 手动添加分类 0 反馈页面 ...
- 20155301-滕树晨 第二次随笔作业--从现有技能获取的经验应用于JAVA中
第二次随笔--从现有技能获取的经验应用于JAVA中 你有什么技能比大多人(超过90%以上)更好? 这个想了半天,有一个是我乒乓球还是比较擅长的,在学校里可能比百分之90的人要强,在外面肯定是不如了.再 ...
随机推荐
- MySQL时区的问题
我这里是在application.properties文件中配置的MySQL连接信息. 开始时间显示不征程是因为没有配置时区,后来加上了setTimeZone=Asia/Shanghai,时间显示正常 ...
- Ubuntu16 改 静态IP的方法
https://blog.csdn.net/mdw5521/article/details/79270035
- js扩展符号
扩展数组:const arr23 = ['a', 'b', 'c']; console.log(...arr23); a b c扩展字符串: abc = 'abcdefghi'; console.lo ...
- laravel request lifecycle
1, index.php2, 生成service container3, service provider register/booted4, dispatch routing5, middlew ...
- 动态规划-3-RNA的二级结构
/*状态转移方程: OPT(i , j)= max(OPT(i , j − 1) , max( 1+OPT(i , t − 1)+OPT(t + 1, j − 1))), where the max ...
- 04jsp(1)
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...
- linux 下安装部署redis
安装: 1.获取redis资源 wget http://download.redis.io/releases/redis-4.0.8.tar.gz 2.解压 tar xzvf redis-4. ...
- mybatis-关联查询4-多对多查询
三张表的关联查询
- mybatis-关联查询2-多对一关联查询
或者多表单独查询方式
- 【Python】变量&数据类型&运算符
一.Python变量&数据类型&运算符 1.print()函数 1.1 输出数字,字符串,含有运算符的表达式 print(123) print('hello world') print ...