当前位置: 首页 > 知识库问答 >
问题:

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

钱跃
2023-03-14

我有一个用户列表列表 “abc”。

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

我只需要从列表 中提取名称和地址,并保存到另一个新的列表对象列表 “xyz”。或者一些新的列表,它有两个字符串字段name和address。例如:

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

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

共有1个答案

巫马曜文
2023-03-14
List<SomeClass> list = users.stream()
                            .map(user -> new SomeClass(user.getName(), user.getAddress()))
                            .collect(Collectors.toList());
 类似资料:
  • 问题内容: 我试图了解获取列表的内容并将其附加到另一个列表是否有意义。 我通过循环功能创建了第一个列表,该列表将从文件中获取特定行并将其保存在列表中。 然后使用第二个列表保存这些行,并在另一个文件上开始新的循环。 我的想法是在for循环完成后获取列表,将其转储到第二个列表中,然后开始一个新的周期,将第一个列表的内容再次转储到第二个列表中,但追加它,因此第二个列表将我循环中创建的所有较小列表文件的总

  • 问题内容: [‘a’,’a’,’b’,’c’,’c’,’c’] 至 和 问题答案: x=[‘a’,’a’,’b’,’c’,’c’,’c’] >>> map(x.count,x) [2, 2, 1, 3, 3, 3] >>> dict(zip(x,map(x.count,x))) {‘a’: 2, ‘c’: 3, ‘b’: 1} >>>

  • 我在下一件事上遇到了麻烦:我有一个arraylist中有数字,我想反转列表中的数字,比如,如果它有1 2 3,将arraylist中的值替换为3 2 1。为此,我创建了一个名为reordenar()的方法;它将第一个arraylist中的最后一个数字放在第二个arraylist中的第一个位置。完成后,我不知道如何让第一个arraylist用第二个arraylist替换它的数字。这是我写的代码。 那

  • 问题内容: 这是否可能在另一个数据结构中包含一个数据结构?到目前为止,我只能在列表中插入字符串或数字。 所需的数据结构将是具有一个列表,其中每个组件也是一个列表。 问题答案: 简单答案:不,Redis列表成员只能是字符串。 复杂的答案:字符串可以做很多事情。您可以使用多种不同的格式(JSON,XML,CSV,特定于语言的序列化等)将列表序列化为字符串。Redis可以容纳很大的字符串值,因此您可以只

  • 问题内容: 我有2个表,一个包含我需要的最终结果,另一个包含我需要根据设定级别选择的列列表。 例如 : 所以,如果我做以下 然后,基本上我需要使用此select语句中的列名来确定从另一条语句中选择了哪些列。 香港专业教育学院尝试过的方法,我当然知道这是错的,但可以让我对我试图做的事情有所了解。 我试图以一种动态方式构建一个sql查询,该查询可以通过我放在表中的任何列进行更改。 从理论上讲,这应与以