我有一个ArrayList<MyDataType> pList;
,其中MyDataType是一个简单的类,如下所示:
class MyDataType {
int modified;
String name;
}
如果我的pList大小为10,如果我想检索其中所有对象的名称ArrayList,我该怎么做?
例如
ArrayList<String> myNames = new ArrayList<pList...>();
我想知道上述陈述的右侧应该是什么样的。
答案 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);
}