当前位置: 代码迷 >> 综合 >> java 基本知识
  详细解决方案

java 基本知识

热度:79   发布时间:2023-10-19 06:12:03.0

1 . 今天谈集合,这是在开发中遇到的问题这里记录一下(这里用kotlin写):

 (1)先定义一个 变量 var list : Mutablelist<String>?= null

在一个方法里面赋值 ,

fun A (list : Mutablelist<String>?) {

this.list = list //这里的list对象是A方法赋值过来的 ,所以这两个list是同一个对象地址

}

(2) 先定义一个变量 val list = mutablelist<String>()

fun A (list : Mutablelist<String>?) {

this.list = list //因为这里是赋值,所以这个this.list对象会变为方法传值过来的对象地址,虽然this.list是new出来的一个新对象

this.list.addAll(list) //这里是addAll 添加值,那么这个对象是new出来的对象而不是 方法A 里面对象地址。

}

总结:这里特别注意,集合里面 的对象不管是赋值来的还是添加来的,里面的对象地址还是不变的,如果要改变那么相关引用这个值都会跟着变,所以对于使用同个对象多出使用要注意了

  相关解决方案