【使用注意】Boolean是final类型,值初始化后不能被更改

由于服务代码逻辑需要在map中的value存储Boolean,后面的代码逻辑 中我想更改Boolean的值发现更改不了,后来查找资料才发现原来Boolean实现类是定义为final,还是对原理不了解呀,以后多注重原理。

测试代码(final类):

	HashMap<String,Boolean> map = new HashMap<String, Boolean>();map.put("1", false);map.put("2", true);map.put("3", false);Collection<Boolean> values = map.values();for (Boolean v : values) {v = Boolean.valueOf(true);}Collection<Boolean> vs = map.values();System.out.println(vs);

结果:[false, true, false]

发现值依旧没有发生改变

测试代码(自定义类):

	HashMap<Integer,News> map = new HashMap<Integer, News>();map.put(1, new News(1, "weijie"));map.put(2, new News(2, "hexiang"));Collection<News> values = map.values();for (News news : values) {news.id = 5;}Collection<News> values2 = map.values();for (News news : values2) {System.out.println(news);}

结果: News [id=5, name=weijie]
News [id=5, name=hexiang]
自定义的类不是final类型因此对象内容通过引用后的变量可以对地址空间的内容进行修改。

参考博客:Boolean 源码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508927.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

语音识别学习日志 2019-7-15 语音识别基础知识准备4 {Baun-Welch算法}

HMM 前向算法(Forward Algorithm)详细解释参考: http://www.52nlp.cn/hmm-learn-best-practices-five-forward-algorithm-1 http://www.52nlp.cn/hmm-learn-best-practices-five-forward-algorithm-2 http://www.52nlp.cn/hmm-learn-best-practices-five-forward-algorithm-3…

【转载保存】B+树索引原理以及应用案例

地址&#xff1a;https://www.jianshu.com/p/486a514b0ded 利用c/c实现基于b树小型关系型数据库&#xff1a;https://github.com/enpeizhao/duck_db 利用java实现的基于b树的数据库案例&#xff1a;https://github.com/liumengjun/BPlusTreeIndex 1.什么是索引&#xff1f; …

语音识别学习日志 2019-7-16 语音识别基础知识准备5 {决策树算法(ID3、 C4.5、 CART)}

决策树算法(ID3、 C4.5、 CART) 决策树的定义 决策树学习采用的是自顶向下的递归方法&#xff0c;其基本思想是以信息熵为度量构造一颗熵值下降最快的树&#xff0c;到叶子节点处&#xff0c;熵值为0。其具有可读性、分类速度快的优点&#xff0c;是一种有监督学习。 决策树呈…

【使用注意】文件内容突然消失

最近在写一个搜索&#xff0c;然后做单元测试时候发现只要启动搜索模块&#xff0c;文件内容就会全部消失了。 然后检查是不是文件流的问题&#xff0c;最后定位到是因为利用BufferedWriter中的FileWriter默认是文件覆盖操作&#xff0c;因此在初始化FileWriter的时候会先将文…

语音识别学习日志 2019-7-17 语音识别基础知识准备6 {维特比算法(Viterbi Algorithm)}

HMM 维特比算法(Viterbi Algorithm)详细解释参考:http://www.52nlp.cn/hmm-learn-best-practices-six-viterbi-algorithm-1 http://www.52nlp.cn/hmm-learn-best-practices-six-viterbi-algorithm-2 http://www.52nlp.cn/hmm-learn-best-practices-six-viterbi-algorithm-3 …

【使用注意】文件写入不全

如果是利用缓冲流&#xff0c;切记要刷新&#xff01;&#xff01;&#xff01;

语音基础知识-基本语音知识,声谱图,log梅普图,MFCC,deltas详解

基本语音知识&#xff1a; https://www.cnblogs.com/liaohuiqiang/p/9916352.html 语音特征提取基本知识&#xff1a; https://www.cnblogs.com/liaohuiqiang/p/10159429.html 动态时间规整DTW(Dynamic Time Warping)介绍&#xff1a; 作用&#xff1a;求解两个不同的时间…

基于包围盒算法的三维点云数据压缩和曲面重建matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 包围盒构建 4.2 点云压缩 4.3 曲面重建 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ...........................................…

【使用注意】以后定义变量类型利用父类定义

今天在改以前项目出现的bug把HashMap改成ComcurrentHashMap时&#xff0c;很多类的方法参数都需要改动&#xff0c;如果直接定义时候利用父类可以方便下次修改&#xff0c;切记&#xff01;&#xff01;&#xff01;

数据集总结

包含图像语音数据集及项目总结&#xff1a; https://www.jianshu.com/p/d0baf4326ff2 各种免费的数据集&#xff1a; https://www.cnblogs.com/genghenggao/p/9625450.html

【使用注意】多线程导致解码混乱的情况

并发情况下公有变量的文件流操作一定要注意加上synchronized 最近在写搜索引擎发现遇到一个编码问题还有数据乱了等情况&#xff0c;后来查找原因是由于并发情况对文件操作没有考虑用同步方法原因&#xff0c;切记

机器学习中的熵、条件熵、相对熵和交叉熵(为何使用交叉熵作为损失函数)

信息熵&#xff0c;条件熵&#xff0c;相对熵&#xff0c;交叉熵的定义与意义&#xff1a; https://blog.csdn.net/u013569304/article/details/82595548 数据压缩与信息熵&#xff1a; http://www.ruanyifeng.com/blog/2014/09/information-entropy.html

【搜索引擎】lucene事务

本文分两部份&#xff0c;第一部份为译&#xff1a;是对是对于lucene事务的一篇佳作《Transactional Lucene》的翻译。第二部份为解&#xff1a;是本人对一文中提到一些概念在源码层次的一些理解分析&#xff0c;参考lucene源码版本为4.10.4。《Transactional Lucene》中还提到…

语音之特征参数提取

https://blog.csdn.net/w_manhong/article/details/78977833 线性预测分析&#xff08;LinearPredictionCoefficients&#xff0c;LPC&#xff09; 感知线性预测系数&#xff08;PerceptualLinearPredictive&#xff0c;PLP&#xff09; Tandem特征和Bottleneck特征 基于滤…

【转载保存】基于Lucene的近实时搜索引擎优化总结

一、搜索优化&#xff1a; 在工程领域&#xff0c;越是看起来“简单、确定”的问题&#xff0c;越是难以解决。近实时搜索引擎需要解决的问题只有一个&#xff1a;性能&#xff01;它包含快速索引&#xff0c;快速搜索&#xff0c;以及索引到搜索的快速生效。 以下为百万条数据…

经典语音论文

经典语音论文&#xff1a; 语音合成&#xff0c;语音识别 为主 https://github.com/zzw922cn/awesome-speech-recognition-speech-synthesis-papers

【转载保存】linux shell字符串切割成数组

原地址&#xff1a;https://www.cnblogs.com/FlyFive/p/3640243.html a"one,two,three,four" 要将$a分割开&#xff0c;可以这样&#xff1a; 按 CtrlC 复制代码 按 CtrlC 复制代码 上述代码会输出 one two three four arr($a)用于将字符串$a分割到数组$arr …

CTC 语音基础 GMM EM

Connectionist Temporal Classification &#xff08;CTC&#xff09;算法解释 https://www.jianshu.com/p/0cca89f64987 语音中响度&#xff0c;音调与音色的影响因素 https://blog.csdn.net/qq_37385726/article/details/89176142 GMM模型与EM算法 https://blog.csdn.ne…

shell 字符串切割

a"one,two,three,four" 要将$a分割开&#xff0c;可以这样&#xff1a; 按 CtrlC 复制代码 按 CtrlC 复制代码 上述代码会输出 one two three four arr($a)用于将字符串$a分割到数组$arr ${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项 &#xf…

【转载保存】修改IK分词器源码实现动态加载词典

链接&#xff1a;http://www.gongstring.com/portal/article/index/id/59.html 当前IKAnalyzer从发布最后一个版本后就一直没有再更新&#xff0c;使用过程中&#xff0c;经常遇到需要扩展词库以及动态更新字典表的问题&#xff0c;此处给出一种解决办法&#xff08;注意&…