在我的主班上,我有:List<Person> allPeople = new ArrayList<>();
然后在类中,我有一个方法,该方法返回所有Id
人的String数组(Person具有访问器方法getId()
)。
将列表转换为仅具有Ids作为字符串的数组的最漂亮方法是什么?
这是我目前的解决方案:
public String[] getAllId() {
Object[] allPeopleArray = allPeople.toArray();
String allId[] = new String[allPeople.size()];
for(int i=0; i<=allPeople.size()-1; i++){
allId[i] = ((Person)allPeopleArray [i]).getId();
}
return allId;
}
上面的作品,但是有一种“更好”的方法吗?
最佳答案
public String[] getAllId() {
return allPeople.stream().map(Person::getId).toArray(String[]::new);
}
关于java - 将对象列表转换为字符串数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27693236/