Java: добавление объектов в список объектов
Это очень просто, но как-то не работает (странно !!).
У меня есть список типа класса. Я добавляю объекты в список в цикле for. Вплоть до добавления объекта все в порядке, но как только я пытаюсь получить доступ к списку, отображаются только значения последнего объекта (см. Вывод, который я показал ниже). Также вот код:
List<myClass> myClassList = new ArrayList<myClass>();
myClass myClassObj = new myClass();
for(int i=0;i<someArray.length;i++){
myClassObj.setProperty1("value1");
myClassObj.setProperty2("value2");
myClassObj.setProperty3("value3");
...
...Others
...
System.out.println(myClassList.add(myClassObj));////////////////////////
}
System.out.println(myClassList.size());/////////////////////////////////////
for(int i=0;i<myClassList.size();i++){
System.out.println(myClassList.get(i).getProperty1());/////////////////
.....
.....Others
.....
}
Iterator<myClass> mcItr = myClassList.iterator();
while(mcItr.hasNext()){
myClass obj = mcItr.next();
System.out.println(obj.getProperty1());
.....
.....Others
.....
}
выход этой программы есть (если размерsomeArray
является5):
//'true' --> 5 times. Printed by the 'add' statement as it returns 'true' when everything is OK
//5 --> Size of 'myClassList' this is also OK
//Here the values corresponding to the fifth and the last object are printed and repeated 5 times. Instead of printing each objects value once. (whichever way of printing to console I may use, the result is same).
Здесь я не могу понять, неправильно ли я создаю список или обращаюсь к нему неправильно.
Пожалуйста посоветуй.
Спасибо!!