文章详情页
java中final修饰的变量不是不能被修改吗?为什么可以add添加?
浏览:87日期:2023-12-29 13:40:02
问题描述
问题解答
回答1:这个 searchableList 变量本身不能再修改了,而 searchableList 指向的对象是可以修改的。
回答2:这个final的用法是final变量,指searchableList 变量的引用不能被更改,已经被锁定在那个ArrayList上了,但是ArrayList本身可以改变。
回答3:final是修饰了searchableList这个变量所指向的堆内存空间,比如searchableList是你家房子,被final修饰表示房子不会再改变了,但是里面的内容是可以变的,你还可以往房子里面加东西进去或者删除更新等.
回答4:final修饰的searchableList是一个引用,这个引用指向了ArrayList<String>,因此searchableList是不能被修改的,而ArrayList里面是用数组实现的,这个数组是可以往里面添加新的元素的。当你试图修改searchableList指向的对象ed时候,就报错了
标签:
java
相关文章:
1. 关于Java引用传递的一个困惑?2. 关于docker下的nginx压力测试3. angular.js - angularjs的自定义过滤器如何给文字加颜色?4. 如何分别在Windows下用Winform项模板+C#,在MacOSX下用Cocos Application项目模板+Objective-C实现一个制作游戏的空的黑窗口?5. javascript - 最终生成的jsBundle文件压缩问题6. docker安装后出现Cannot connect to the Docker daemon.7. android clickablespan获取选中内容8. android - 启动模拟器的,报“Could not automatically detect an ADB binary……”,要怎么解决?9. python - TypeError: tryMsgcode() takes exactly 2 arguments (0 given)10. javascript - canvas 裁剪空白区域
排行榜
