webwork下 ArrayList的问题
新手学习中。。。。
public class TESTACTION implements Action{
private ArrayList privileges;
private User user;
private User user2;
public ArrayList getPrivileges() {
return privileges;
}
/**
* @see com.opensymphony.xwork.Action#execute()
*/
public String execute() throws Exception
{
privileges = new ArrayList();
for(int i=0;i<=1;i++){
user = new User();
user.setId("id"+i);
user.setName("nhk"+i);
System.out.println("vECTROs set name " + user.getName());
System.out.println(privileges.add(user));
}
for(int i=0;i<privileges.size();i ++){
user2 = new User();
user2 = (User)privileges.get(i);
System.out.println("vECTROs get name = " + user.getName());
}
return Action.SUCCESS;
}
}
为什么在第一个循环中每次向ArrayList中添加一个USER对象(只具备name与id属性),添加完毕后从ArraryList中取时 得到的USER对象都是一样的 ?后台打印出来的信息如下:
vECTROs set name nhk0
true
vECTROs set name nhk1
true
vECTROs get name = nhk1
vECTROs get name = nhk1
很是郁闷,谢谢大家