最近频繁做List的一些操作,换成java8后发现有的可以直接通过steam流完成快速开发。记录一下
List<A> list = new ArrayList<>();
@Data
public class A{
private String name;
private int age;
private Date birthday;
}
List<A> list = new ArrayList<>();
数据字段过滤
list = list.stream().filter(a -> a.name.equal("zs")).filter(a -> a.age>10).collect(Collectors.toList());
数据字段排序
降序
list = list.stream().sorted(Comparator.comparing(A::getBirthday,Comparator.reverseOrder())).collect(Collectors.toList());
升序
list = list.stream().sorted(Comparator.comparing(A::getBirthday)).collect(Collectors.toList());
取固定条数
list = list.subList(start,end);
list = list.stream().limit(10);