想要比较 2 个不同的 List<SomeObject> 属性,如果匹配,想要在现有对象列表中添加一些属性并返回新列表

    List<UserDTO1> list1 = new ArrayList<>();
    public class UserDTO1 {
        private String userId;
        private String neName;
        private int useraccesId;
        private String status;
    }
    
    
    
    List<UserDto1> list2 = new ArrayList<>();
    
    public class Useraccesses {
        private int useraccessId;
        private String userId;
      
    }
    

以上是 2 个 DTO,我有 2 个带有这些 DTO 的列表。想要比较两个列表,如果 list1.getUserID.equals(list2.getUserId) 那么我想添加 list1.setUseraccessId(list2.getUseraccessId)。

使用流我该怎么做。

希望通过 Stream API 实现与以下 forloop 相同的功能

for (UserDTO1 user : list1){
            for (UserDTO2 useraccesses : list2){
                if (user.getUserId().equals(useraccesses.getUserId())){
                    user.setUseraccesId(useraccesses.getUseraccessId());
                    newLList.add(user);
                }
            }
        }
meng0827 回答:想要比较 2 个不同的 List<SomeObject> 属性,如果匹配,想要在现有对象列表中添加一些属性并返回新列表

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/14781.html

大家都在问