Java 8如何操作一个列表中的对象并将其收集到另一个列表中? [重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 8如何操作一个列表中的对象并将其收集到另一个列表中? [重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我是Java8的新手。我需要按照特定条件将POJO列表转换为组,并在UI上显示。
- 将属于Children类别的对象列表转换为Person类别。
- 返回列表。
Children.java private String firstName; private String lastName; private String school; private String personId; // Setters and getters. Person.java private String fullName; private String address; // Setters and Getters. private Person convertChildToPerson(Children child) { Person person = new Person(); person.setFullName(child.getLastName() + ", " + child.getFirstName()); .. return person; }
..主要代码.. ..List<Person> personList; // Is populated by other functions. // Connect to DB and gets the output List<Children> childrenList = (Children) criteria.list(); for(Children children: childrenList) { personList.add(convertChildToPerson(children)); } return personList;
上面的FOR-LOOP不能被Java 8 Streams取代吗?
答案
List<Person> newList = childrenList.stream()
.map(this::convertChildToPerson)
.collect(Collectors.toList());
personList.addAll(newList);
如Holger所建议的那样更短(更好):
childrenList.stream()
.map(this::convertChildToPerson)
.forEachOrdered(personList::add);
以上是关于Java 8如何操作一个列表中的对象并将其收集到另一个列表中? [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何从列表中的项目中删除标点符号并将其另存为列表中的单独项目?