例如我有一个List
A
,其中有B
个类的对象,然后类B
有一个名为name
的属性(String
)在里面。
有什么方法可以直接从列表name
List<String>
提取到新的A
List<B> A = new ArrayList<>({B1, B2, B3});
现在B1
有name = "John"
B2
有name = "Michael"
B3
有name = "Doe"
现在直接来自List
A
,而不使用for循环,我可以创建一个包含所有John
,Michael
和Doe
的列表。
答案 0 :(得分:3)
如果您可以使用Java8(并且您应该在15个月之前发布它),您可以使用流轻松完成:
List<String> names = persons.stream()
.map(p -> p.getName())
.collect(Collectors.toList());