52 Java將一個對象列表轉換成另一個對象列表


場景介紹:有A、B兩個公司,B公司向從A公司中拿到用戶的信息。

A存放用戶信息的對象是

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    private String id;
    private String username;
    private String password;
    private String address;
    private String age;
}

A給B的用戶數據是

[ 
User(id=1, username=zhangsan, password=123, address=安徽亳州, age=22),
User(id=2, username=lisi, password=123, address=安徽合肥, age=23),
User(id=3, username=wangwu, password=123, address=安徽阜陽, age=24)
]

B存放用戶信息的對象是

@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserInfo {
    private String idCard;
    private String name;
    private String pwd;
}

此時可以看出,B公司接受的對象和Agon景介紹:有A、B兩個公司,B公司向從A公司中拿到用戶的信息。

 

A存放用戶信息的對象是

@Data

@AllArgsConstructor

@NoArgsConstructor

public class User {

    private String id;

    private String username;

    private String password;

    private String address;

    private String age;

}

 

A給B的用戶數據是

[ 

 User(id=1, username=zhangsan, password=123, address=安徽亳州, age=22),

 User(id=2, username=lisi, password=123, address=安徽合肥, age=23),

 User(id=3, username=wangwu, password=123, address=安徽阜陽, age=24)

]

B存放用戶信息的對象是

@Data

@AllArgsConstructor

@NoArgsConstructor

public class UserInfo {

    private String idCard;

    private String name;

    private String pwd;

}

  

此時可以看出,B公司接受的對象和A公司的內容不一樣,這樣就會使用到對象列表轉換了

        List<UserInfo> collect = list.stream()
                .map(l -> new UserInfo(l.getId(), l.getUsername(), l.getPassword()))
                .collect(Collectors.toList());

 此時輸出

[UserInfo(idCard=1, name=zhangsan, pwd=123), UserInfo(idCard=2, name=lisi, pwd=123), UserInfo(idCard=3, name=wangwu, pwd=123)]

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM