常用集合List对象及Map对象中进行引用时是直接引用内存中的对象,还是通过相关指针索引指向对象地址?
是不是刚看到这个问题 一脸懵逼?
通过平时开始时的一些细节 可以看出java一直在致力于隐藏指针的相关信息及概念,令我们潜移默化的认为在java中一切都是对象,但在数据引用转换过程中 如果都是对象级的 相对来说性能的消耗就有些大了 所以其实java中很多我们平时不注意的地方也都是通过指针进行引用的
NO扯皮 no bb 还是直接上代码吧
举个栗子:
Admin admin=new Admin ();
List adminList=new ArrayList<>();
adminList.add(admin);
admin.setPassWord(“12345678”);
这里的adminList.get(0).getPassWord();的值为"12345678"
所以在admin这个对象生命周期结束前的所有修改,list中的相关对象的值都会改变
Map同上
两者除(byte short int long float double boolean char) 8种基本类型外的其他数据类型引用都为指针引用