修改List内部对象的属性值并保存

直接通过List.get(i)获取对象obj,并对obj中的属性进行修改即可。因为obj获取的是List中对象的引用,所以对obj的修改会自动同步到对List中去

public class ListTest {
     public static void main(String args[])
        {
            User user1=new User();
            List userList=new  ArrayList();
            user1.setName("呵呵");
            user1.setSex("男");
            userList.add(user1);

            User user2=new User();
            user2.setName("嘻嘻");
            user2.setSex("女");
            userList.add(user2);

            User obj1 = userList.get(0);
            obj1.setName("change1");

            User obj2 = new User();
            obj2 = userList.get(1);
            obj2.setName("change2");

            for(User userInfo:userList)
            {  

                System.out.println(userInfo);
            }
        }
}

class User{
     //姓名
    private String name;

    //性别
    private String sex;

    public String getName()
    {
        return name;
    }

    public void setName(String name)
    {
        this.name = name;
    }

    public String getSex()
    {
        return sex;
    }

    public void setSex(String sex)
    {
        this.sex = sex;
    }

    @Override
    public String toString()
    {
        return "User [name=" + name + ", sex=" + sex + "]";
    }
}

运行main函数,输出为:

User [name=change1, sex=男]
User [name=change2, sex=女]

你可能感兴趣的:(Java)