java8 Stream2
new Thread(() -> System.out.println("lambda表达式,取代匿名函数......")).start();
Stream.of("1", "1", "3").distinct().forEach(System.out::println);
System.out.println("stream --max..........");
System.out.println(Stream.of("1", "1", "3").max(Comparator.comparing(x -> x)).get().toString());
System.out.println("stream --min..........");
System.out.println(Stream.of("1", "1", "3").min(Comparator.comparing(x -> x)).get().toString());
List<Teacher> tonelist=new ArrayList<>();
tonelist.add(new Teacher("金",24));
tonelist.add(new Teacher("旭",12));
tonelist.add(new Teacher("东",25));
tonelist.add(new Teacher("张",26));
tonelist.add(new Teacher("三",22));
tonelist.stream().filter(x ->x.getAge()>20).forEach(System.out::println);
tonelist.stream().map(t ->t.getName()).forEach(System.out::println);
List<Teacher> ttwolist=new ArrayList<>();
ttwolist.add(new Teacher("A",24));
ttwolist.add(new Teacher("B",12));
ttwolist.add(new Teacher("C",25));
ttwolist.add(new Teacher("D",26));
ttwolist.add(new Teacher("E",22));
//Stream.of flatMap练习 吧多个list压扁
Stream.of(tonelist,ttwolist).flatMap(t ->t.stream()).filter(t ->t.getAge()>20).forEach(x ->System.out.println(x.getName()));
List<Teacher> list = Stream.of(tonelist,ttwolist).flatMap(x ->x.stream().filter(y ->y.getAge()>23)).collect(Collectors.toList());
for (Teacher teacher : list) {
System.out.println(teacher.toString());
}
class Teacher {
@Override
public String toString() {
return "Teacher [name=" + name + ", age=" + age + "]";
}
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Teacher() {
super();
}
public Teacher(String name, Integer age) {
super();
this.name = name;
this.age = age;
}
}
java8 Stream2的更多相关文章
- java8之stream
lambda表达式是stream的基础,初学者建议先学习lambda表达式,http://www.cnblogs.com/andywithu/p/7357069.html 1.初识stream 先来一 ...
- java8完全解读二
继续着上次的java完全解读一 继续着上次的java完全解读一1.强大的Stream API1.1什么是Stream1.2 Stream操作的三大步骤1.2.1 创建Stream1.2.2 Strea ...
- 十分钟学会Java8的lambda表达式和Stream API
01:前言一直在用JDK8 ,却从未用过Stream,为了对数组或集合进行一些排序.过滤或数据处理,只会写for循环或者foreach,这就是我曾经的一个写照. 刚开始写写是打基础,但写的多了,各种乏 ...
- java8新特征
一:Lambda 表达式 为什么使用 :使用 Lambda 表达式可以使代码变的更加简洁紧凑. 表达了什么?: 匿名内部类的新写法: 语法 :(parameters) -> express ...
- 十分钟学会Java8:lambda表达式和Stream API
Java8 的新特性:Lambda表达式.强大的 Stream API.全新时间日期 API.ConcurrentHashMap.MetaSpace.总得来说,Java8 的新特性使 Java 的运行 ...
- 第十七章 java8特性
17.java8中Lambda表达式与Stream API的使用 17.1 Lambda 表达式(Lambda Expressions) 1课时 17.2 函数式(Functional)接口 1课时 ...
- Java8 新特性学习
摘自:https://blog.csdn.net/shuaicihai/article/details/72615495 Lambda 表达式 Lambda 是一个匿名函数,我们可以把 Lambda ...
- Java8的lambda表达式和Stream API
一直在用JDK8 ,却从未用过Stream,为了对数组或集合进行一些排序.过滤或数据处理,只会写for循环或者foreach,这就是我曾经的一个写照. 刚开始写写是打基础,但写的多了,各种乏味,非过来 ...
- java8新特性——Stream API
Java8中有两大最为重要得改变,其一时Lambda表达式,另外就是 Stream API了.在前面几篇中简单学习了Lambda表达式得语法,以及函数式接口.本文就来简单学习一下Stream API( ...
随机推荐
- .Net Core 学习目录(搁置)
简介 .NET Core 是.NET Framework的新一代版本,是微软开发的第一个官方版本,具有跨平台 (Windows.Mac OSX.Linux) 能力的应用程序开发框架 (Applicat ...
- 历时小半年总结之JAVA
一.JavaSE 1.多线程 (1).进程与线程的区别? 答:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径. (2).为什么要用多线程? 答:提高程序效率 (3).多线 ...
- sts创建maven项目 引入spring,报错
症状: Missing artifact org.springframework:spring-core:jar:5.0.0.RC3 原因: 在引入之前没有设置spring版本号 和spring ur ...
- Python_010(迭代器)
一.函数名的运用 1.函数名的内存地址 def func(): print("英雄联盟") print(func) #输出结果: <function func at 0x00 ...
- [CSP-S模拟测试]:天空龙(模拟)
题目描述 奥西里斯之天空龙很喜欢颜色,有一天他找到了三种颜色——红黄蓝.奥西里斯有$a$个红色,$b$个黄色,$c$个蓝色,他想用画出最好的画,可是需要至少$x$个红色,$y$个黄色和$z$个蓝色,似 ...
- 如何在微信小程序中使用iconfont
开篇废话 开发过小程序的童鞋肯定都会遇到这样的问题,当我们在小程序中使用iconfont官方推荐的方法插入字体时,我们总会得到一个打印机(滑稽).那么如何在小程序中正确的使用iconfont呢? 一. ...
- DataTable 转Json格式C#代码
/// <summary> /// dataTable转换成Json格式 /// </summary> /// <param name="dt"> ...
- Anaconda在Python3和Python2之间切换,Conda命令,anaconda中python的升级和降级
当在pycharm IDE中指定不同的Python版本时,设置方法 File->Setting->Project:XXXX->Project Interpreter 选择不同位 ...
- Python 有哪些优雅的代码实现让自己的代码更pythonic?
https://www.zhihu.com/question/37751951/answer/73425339 https://www.cnblogs.com/geaozhang/p/7111961. ...
- sts测试流程
测试目的: 测试安全补丁打上了没 测试前提: 1.发货版本,user debug版本,相应安全补丁已合入,测试工具与安全补丁是对应的 2.selinux:Enable 3.连接ADB,stay awa ...