如何从用户数据类型的ArrayList创建字符串的ArrayList

时间:2013-10-23 09:40:17

标签: java arraylist

我有一个ArrayList<MyDataType> pList;,其中MyDataType是一个简单的类,如下所示:

class MyDataType {
    int modified;
    String name;
}

如果我的pList大小为10,如果我想检索其中所有对象的名称ArrayList,我该怎么做?

例如

ArrayList<String> myNames = new ArrayList<pList...>();

我想知道上述陈述的右侧应该是什么样的。

5 个答案:

答案 0 :(得分:2)

声明List<String>而非迭代pList并将name添加到names list

 List<String> names=new ArrayList<>();
 for(MyDataType dt:pList){
 names.add(dt.getName())
 }

答案 1 :(得分:0)

您将需要迭代pList并逐个添加每个名称。

答案 2 :(得分:0)

List<String> names = new ArrayList<String>();

for(int i = 0; i < pList.size(); i++)
{
    names.add(pList.get(i).getName());
}

答案 3 :(得分:0)

你可以这样做

List<MyDataType > pList=new ArrayList<MyDataType >();

List<String> myNames = new ArrayList<String>();
for (MyDataType myDataType : pList) {           
    myNames.add(myDataType.getName());      
}

答案 4 :(得分:0)

有一些functional ways可以做到这一点,例如番石榴,但这带来了一些主要的性能问题。坚持基础并迭代列表。

List<String> names = new ArrayList<String>();
for(MyDataType element:pList){
    //hopefully this would use an accessor element.getName()
    names.add(element.name); 
}