import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Arrays;
import java.util.List;
public class StreamTest {
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,"f",25);
//集合就是存储
List<User> list = Arrays.asList(u1,u2,u3,u4,u5);
//stream流计算
list.stream().filter(u-> {return u.getId()%2 == 0;})//User(id=2, name=b, age=22)User(id=4, name=d, age=24)User(id=6, name=f, age=25)
.filter(u->u.getAge() > 23)//User(id=4, name=d, age=24)User(id=6, name=f, age=25)
.map(u->{return u.getName().toUpperCase();})//DF
.sorted((uu1,uu2)->{
return uu2.compareTo(uu1);//FD
})
.limit(1)//F
.forEach(System.out::print);
}
}
@Data //生成tostring和get&&set方法
@NoArgsConstructor //生成无参构造方法
@AllArgsConstructor //生成全部有参构造方法
class User{
private int id;
private String name;
private int age;
}