如何快速定位list值
最近在做一个对接:和地方做数据对接,但是对面提供得接口返回LIST不分页面,是所有得数据。和对面商量尽量返回数据精确一点,不要返回太多数据过来,无果。就网上查询了,最终选择了java8 得推出来得 stream(为集合创建并行流)。
使用 stream.filter()进行过滤,用collect 去收集过滤结果。在从中取数据就会很快。
注意:(1) filter过滤得是 Lambda 表达式,返回的是Boolean结果。
(2) 在表达式筛选得值为null时 stream容易报空指针。
例子: List<Record> datalist = new ArrayList<Record>();
//获取想要得结果集
List<Record> result=datalist.stream.filter(x->x.get()值.equals(值)).collect(collectors.tolist);