package com.company.newcharacter;
//流式计算
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* 题目要求:一分钟内完成此题,只能用一行代码实现!
* 现在有5个用户!筛选:
* 1、密码必须是偶数
* 2、年龄必须大于23岁
* 3、用户名转为大写字母
* 4、用户名字母倒着排序
* 5、只输出一个用户!
*/
//mysql,集合本质是来放东西 计算的东西应该交给流
public class Stream {
public static void main(String[] args) {
User1 u1 = new User1("qk1","1",21);
User1 u2 = new User1("Hk2","2",22);
User1 u3 = new User1("kk3","3",23);
User1 u4 = new User1("Hk4","4",24);
User1 u5 = new User1("ak5","5",25);
//集合就是存储
List<User1> list = Arrays.asList(u1, u2, u3 ,u4 ,u5);
//流来计算
list.stream()
.filter((u)->{ return u.getAge()%2 == 0; })
.filter((u)->{ return u.getAge() > 23; })
.map((u)->{return u.getName().toUpperCase();})
.sorted((o1,o2)->{return o2.compareTo(o1);})
.limit(1)
.forEach(System.out::print);
}
}
class User1{
String name;
String password;
int age;
User1(String name, String password ,int age){
this.name = name;
this.password = password;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
计算结果: