日期:2014-05-18  浏览次数:20776 次

自定义数组复值问题。高手指点那里错了!
int i=0;
循环开始
item1.setAuthor(sdf(i));
item1.setHandle(wer(i));
list.add(item1);
i++;
循环结束
sdf和wer分别为两个数组
item1为一个自定义结构
list为item1同类型的数组
结果返回的内容每一条都相同!
高手指点那里错了!

------解决方案--------------------
item1是什么??? 一个对像吧???
item1你应该是定义在循环的外面吧???

把item1定义到循环的里面来
------解决方案--------------------
int i=0; 
循环开始 
XXX item1 = new XXX ()
item1.setAuthor(sdf(i)); 
item1.setHandle(wer(i)); 
list.add(item1); 
i++; 
循环结束 


item1 放在循环里面每次都重新初始化一个对象就可以
你多看看引用和对象之间的关系和不同就明白了