Lambda 表达式 例子。自己看。

这个表达式到处用的越来越多,不得已,学一下

/**
     * @author : 陈惟鲜
     * @Date : 2021年1月25日 下午4:46:38
     * @param args
     */
    public static void main(String[] args) {
        List<MyObj> results = new ArrayList<MyObj>();
        results.add(new MyObj("11", "张1", 11));
        results.add(new MyObj("22", "张2", 22));
        results.add(new MyObj("33", "张3", 33));
        results.add(new MyObj("44", "张4", 44));
        List<String> strs = Arrays.asList("11","22");
        strs.forEach(System.out::println);
        System.out.println(JSON.toJSON(strs));
        // 对象转换输出        
        List<UserGroup> userGroups = results.stream().filter(myObj-> {
            return myObj.getAge()>20;
        }).map(myObj ->{
            UserGroup userGroup = new UserGroup();
            userGroup.setGroupId(myObj.getId());
            userGroup.setGroupName(myObj.getName());
            return userGroup;
        }).collect(Collectors.toList());
        System.out.println("对象转换输出:
" + JSON.toJSON(userGroups));
        // 循环嵌套输出
        List<MyObj> rets = new ArrayList<>();
        results.stream().forEach(myObj->{
                strs.stream().forEach(str -> {
                 if (str.equals(myObj.getId())) {
                     rets.add(myObj);
                 }
            });
        });
        System.out.println("对象转换输出:
" + JSON.toJSON(rets));
    }

输出结果:

11
22
["11","22"]
对象转换输出:
[{"groupName":"张2","groupId":"22"},{"groupName":"张3","groupId":"33"},{"groupName":"张4","groupId":"44"}]
对象转换输出:
[{"name":"张1","id":"11","age":11},{"name":"张2","id":"22","age":22}]
原文地址:https://www.cnblogs.com/a393060727/p/14326091.html