大数据:存储 + 计算
集合、MySQL 本质就是存储东西的;
计算都应该交给流来操作!
?
/**
* 题目要求:一分钟内完成此题,只能用一行代码实现!
* 现在有5个用户!筛选:
* 1、ID 必须是偶数
* 2、年龄必须大于23岁
* 3、用户名转为大写字母
* 4、用户名字母倒着排序
* 5、只输出一个用户!
**/
public class Test01 {
public static void main(String[] args) throws InterruptedException {
User user1 = new User(1, "a", 21);
User user2 = new User(2, "b", 25);
User user3 = new User(3, "c", 22);
User user4 = new User(4, "d", 23);
User user5 = new User(5, "e", 24);
// 集合就是存储
List<User> list = Arrays.asList(user1, user2, user3, user4, user5);
//计算交给Stream流
// lambda表达式、链式编程、函数式接口、Stream流式计算
list.stream()
.filter(u -> {
return u.getId() % 2 == 0;
})
.filter(u -> {
return u.getAge() > 23;
})
.map(u -> {
return u.getName().toUpperCase();
})
.sorted(Comparator.reverseOrder())
.limit(1)
.forEach(System.out::println);
}
}
@Data
@AllArgsConstructor
class User {
private int Id;
private String name;
private int age;
}
原文:https://www.cnblogs.com/saxonsong/p/14730211.html