【发布时间】:2014-11-14 11:11:43
【问题描述】:
我正在尝试循环一个列表,该列表内部有 4 个数组,每个数组有 7 个值
我正在循环列表,然后当我从列表中获取一个数组时,因为我知道数组有多少个值,所以我分配每个数组索引,如下所示:personObject.setName(String.valueOf(myArray[0]) 然后在 while 循环结束时添加到 PersonObject 的 Person 列表,如下所示:listOfPersons.add(personObject)。
我的问题是我的列表只填充了相同的对象,我知道我正在循环的列表中的 4 个数组具有不同的值,这是我的代码:
ArrayList<Object> objectList= null;
objectList= _serviceVariable.getObjects(); <--- this works it returns a list with 4 arrays all with diferent values
Person myPerson = new Person();
List<Person> personsList = new List<Person>;
Iterator<Object> itr = objectList.iterator();
while(itr.hasNext())
{
Object[] innerObj = (Object[]) itr.next();
myPerson.setName(String.valueOf(innerObj [0])
myPerson.setLastName(String.valueOf(innerObj [1])
myPerson.setNickName(String.valueOf(innerObj [2])
personsList.add(myPerson);
}
当我打印我的人员列表时,我的人员列表中充满了同名、姓氏和昵称的人员,这是一个列表,其中包含具有相同值的相同对象。
【问题讨论】:
-
也尝试使用 ArrayList
objectList,使用模板,不要强制转换 -
我应该在哪个部分使用那个朋友?
-
ArrayList
标签: java arrays list loops while-loop