您的位置:首页 > 其它

添加一个对象到集合中时,集合里面存放的是对象的引用还是对象本身?

2012-03-03 19:33 281 查看
问题:添加一个对象到集合中时,集合里面存放的是对象的引用还是对象本身?

答:对象的引用。以下代码可以证明:

Java代码



import java.util.ArrayList;

import java.util.List;

public class Test5 {

public static void main(String args[]){

List<User> userList1 = new ArrayList<User>();

List<User> userList2 = new ArrayList<User>();

User user1 = new User();

userList1.add(user1);

userList2.add(user1);

System.out.println("SET VALUE FOR USERLIST2:");

for(User user: userList2){

user.setName("name");

user.setPassword("password");

}

System.out.println("PRINT VALUE FOR USERLIST1:");

for(User user: userList1){

System.out.println(user.getName());

System.out.println(user.getPassword());

}

}

public static class User{

private String name;

private String password;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

}

}

其输出结果是:

SET VALUE FOR USERLIST2:

PRINT VALUE FOR USERLIST1

name

password

设置userList2中元素的value,但是userList1中元素的value也发生了改变,证明集合中存放的是对象的引用。

转自:http://bettereveryday.iteye.com/blog/682322
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐