繁体   English   中英

从一个列表中提取多个字段并将其保存到另一列表或相同类型的新列表中。 在Java 8中

[英]Extracting multiple fields from one list and save it to another list or same type new list. In java 8

我有一个用户List<User> “ abc”。

class User {
int id;
String name;
String address;
.....//getters and setters
}

我只需要从List<User>提取名称和地址,然后保存到另一个新的列表对象List<User> “ xyz”。 或一些具有两个String字段名称和地址的新列表。 例如:

class SomeClass {
String name;
String address;
........//getters and setters
}

我知道可以通过迭代原始列表并将其保存到另一个新列表对象来完成。 但是我想知道如何在Java 8更有效地完成它。 通过使用streams()map() …等。并使用默认构造函数。

List<SomeClass> list = users.stream()
                            .map(user -> new SomeClass(user.getName(), user.getAddress()))
                            .collect(Collectors.toList());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM