Stream 流式计算
大数据的 存储和计算
Lamda表达式 链式编程 函数接口 Stream流计算
import java.util.Arrays; import java.util.List; import java.util.Locale; public class Functional { 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 list = Arrays.asList(u1,u2,u3,u4,u5); //存入list like //计算 Stream流 list.stream() .filter(u->{ return u.getId()%2==0;}) .filter(u->{return u.getAge()>=23;}) .map(u->{return u.getName().toUpperCase(Locale.ROOT);}) .sorted((s1,s2)->{return s2.compareTo(s1);}) //反向排序 .limit(1) //只显示一个 .forEach(System.out::println); } } class User { private int id; private String name; private int age; public User(int id, String name, int age) { this.id = id; this.name = name; this.age = age; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }