steam使用_便利条件查询

img


使用一条代码实现

很简单,使用里面的过滤流方法filter就可以解决了,大致如下

List<AuthItemAttachResultDTO> newList= list.stream().filter(
s->s.byte==1 &&
xxxxxxx).collect(Collectors.toList());

可能你自己需要修改一下,毕竟不清楚你的对象里面的准确元素

看看这个是不是你要的

public static void main(String[] args) throws Exception {
        List<AuthItemAttachResultDTO> list = new ArrayList<>();
        list.add(new AuthItemAttachResultDTO("公司0", 1));
        list.add(new AuthItemAttachResultDTO("公司0", 1));
        list.add(new AuthItemAttachResultDTO("公司1", 0));
        list.add(new AuthItemAttachResultDTO("公司2", 0));
        list.add(new AuthItemAttachResultDTO("公司2", 1));
        list.add(new AuthItemAttachResultDTO("公司3", 1));
        AtomicBoolean flag = new AtomicBoolean(false);
        List<AuthItemAttachResultDTO> result = list.stream().filter(company -> {
            if (!flag.get() && company.getBytes() == 1 && "公司0".equals(company.getUserName())) {
                flag.set(true);
                return true;
            }
            return company.getBytes() == 1 && !"公司0".equals(company.getUserName());
        }).collect(Collectors.toList());

        System.out.println(result);
    }