(1).查询姓李的,名字是3个字的,循环输出
List list = new ArrayList<>();
list.add("李凌");
list.add("何美珍");
list.add("张世豪");
list.add("高久峰");
list.add("韦凤");
list.add("李世民");
list.add("李淳罡");
list.add("李渊");
list.stream().filter(
item -> item.startsWith("李")
).filter(
item -> item.length() == 3
).forEach(System.out::println);
李世民
李淳罡
(2).取出数值为0的数据,或者数值大于5的数据,并保存到新的list中
List score = new ArrayList<>();
score.add(0);
score.add(1);
score.add(3);
score.add(5);
score.add(7);
score.add(9);
List newScore = score.stream().filter(
item -> item.equals(0) || item > 5
).toList();
System.out.println(newScore);
[0, 7, 9]
(3).取出工资大于15000,并且年龄大于等于29岁的人,并且把这些人的姓名熟悉提取出来保存到list中
List userList = new ArrayList();
userList.add(new User("李凌", 18, 20000));
userList.add(new User("何美珍", 17, 15000));
userList.add(new User("熊海玉", 17, 23000));
userList.add(new User("张世豪", 18, 27000));
userList.add(new User("高久峰", 29, 15000));
List userName = userList.stream().filter(
item -> item.salary >= 15000 && item.age >= 29
).map(User::getName).toList();
System.out.println(userName);