Stream流式计算
小于 1 分钟JavaJUC并发编程
什么是Stream流式计算
大数据:存储 + 计算。集合、MySQL本质就是存储东西的。计算都应该交给流来操作。

/**
* @Desc 题目要求:一分钟完成此题。只能用一行代码实现
* 现在有5个用户。筛选:
* 1、ID必须是偶数
* 2、年龄必须大于23岁
* 3、用户名转为大写字母
* 4、用户名字母倒序
* 5、只输出一个用户
* @Author HeJin
* @Date 2021/3/12 15:45
*/
public class Test {
public static void main(String[] args) {
User u1 = new User(1, "a", 21);
User u2 = new User(2, "b", 22);
User u3 = new User(3, "c", 23);
User u4 = new User(4, "d", 24);
User u5 = new User(6, "e", 25);
// 集合就是存储
List<User> list = Arrays.asList(u1, u2, u3, u4, u5);
// 计算交给流
// lambda表达式、链式编程、函数式接口、Stream流式计算
list.stream()
// ID必须是偶数
.filter(u -> { return u.getId() % 2 == 0; })
// 年龄必须大于23岁
.filter(u -> u.getAge() > 23)
// 用户名转为大写字母
.map(u -> u.getName().toUpperCase())
// 用户名字母倒序
.sorted((o1,o2)->o2.compareTo(o1))
.limit(1)
.forEach(System.out::println);
}
}
E
Process finished with exit code 0