final Map可以修改内容,final 常量不能修改

对比集合:

final Map map =new HashMap();
final List list =new ArrayList();

map和list 对应的是栈中存储的地址,final表示地址不能修改,但是地址对应的内存区域的值是可以修改的;

对比常量:

final String name=”Joke”;
final int age=10;

name和age对应的是栈中存储的地址,同样final表示地址不能修改,但是地址的存储跟常量的值有关,给他重新赋值会指向另外一个对象,地址就改变了

如:
map集合对应一个hashcode值改变后hashcode不变,但是String常量的值改变了hashcode就也改变了,也就是对应的栈地址变了;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值