java中List的一个小注意点

java中List的一个小注意点,第1张

java中List的一个小注意点

先上代码:

import java.util.ArrayList;
import java.util.List;

public class TestList {

    public static void main(String args[]){
        List<Student1> list = new ArrayList<>();
        Student1 xiaozhu = new Student1("aa");
        list.add(xiaozhu);
        System.out.println("第一次获取:"+list.get(0).getName());
        
        xiaozhu.setName("bb");
        System.out.println("第二次获取:"+list.get(0).getName());

    }
}

class Student1{
    String name;
    public Student1(String name){
        this.name = name;
    }
    public String getName(){
        return this.name;
    }
    public void setName(String name){
        this.name = name;
    }
}

结果如下:

​ 我们们创建一个只有一个name属性的Student1类,然后再main方法中新建一个List集合,新建一个Student1对象,并将其加入到List中,然后从List中获取并打印其名字。然后我们再设置这个Student1对象的名字属性,然后再次从从List中获取并打印其名字,我们发现两次的结果并不相同。

结论:我们改变List中对象属性后,List也会发生相应的改变。因为List收集到的对象后,并没有改变对象的存储位置。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/875993.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存