让我们考虑一下这个课程:
public class Person
{
public String name;
public String lastname;
}
假设我们有Person
类的集合。如何生成仅包含lastnames
的新String集合?
我们可以通过迭代轻松完成,但我正在寻找最有效的方法。
由于某些依赖关系,我无法使用Java 8。
答案 0 :(得分:0)
使用for循环并使用正确的大小初始化目标集合:
String[] lastnames = new String[persons.size()]; // or new ArrayList(persons.size()), ...
for(int i=0;i<persons.size();i++){
lastnames[i] = persons.get(i).getLastName();
}
如果两个集合(人员和姓氏)都可以直接访问,这将是有效的(O(n))。