集合中的元素无故被擅改,到底是怎么回事
2014-08-29 02:31
176 查看
在使用集合编程的时候,不知道大家有没遇到过这样的经历。在不使用数据库的情况下,保存数据有时候会使用集合,但是在某一些情况下,会发现原本以为保存在集合中的数据是好好的。但是在后面的运行过程中,发现集合中的元素被改变了。
经过笔者的一番思考,发现原来是错在了一个基础性问题上,下面是截图:
相信大家看完因该大概明白怎么回事了。集合中的元素无故被擅改,其实就是前面的程序代码在执行的时候,曾经做过上面代码写的那些事情。解决办法就是——new 一个新的对象出来,将要复制的对象的内容一点一点重新复制过去给新new的对象。而不能直接使用赋值运算符“=”号。这个符号用在基本数据类型是可以的,但是用在引用数据类上,就会有问题。
经过笔者的一番思考,发现原来是错在了一个基础性问题上,下面是截图:
相信大家看完因该大概明白怎么回事了。集合中的元素无故被擅改,其实就是前面的程序代码在执行的时候,曾经做过上面代码写的那些事情。解决办法就是——new 一个新的对象出来,将要复制的对象的内容一点一点重新复制过去给新new的对象。而不能直接使用赋值运算符“=”号。这个符号用在基本数据类型是可以的,但是用在引用数据类上,就会有问题。
相关文章推荐
- 移除集合中指定条件的元素
- java去除集合中重复元素示例分享 java去除重复
- 判断两个集合中 是否有相同的元素
- 移动端click事件延迟300ms到底是怎么回事,该如何解决?
- Set集合实现元素不重复原理
- java枚举元素集合
- jpa集合元素的映射
- 1、向集合添加元素是否能成功。。。
- 集合框架(去除ArrayList集合中的重复自定义对象元素案例)
- 删除集合中的重复元素
- 【.net 深呼吸】在配置节中使用元素集合
- STL/C++__中 set(集合) 删除元素
- java 集合中将元素倒序排列
- SDUT 离散题目2 判断一个集合元素是否重复
- 集合的前N个元素
- 循环读取Map集合类型的元素
- 集合框架_TreeSet存储Integer类型的元素并遍历
- 集合框架_TreeSet保证元素唯一性和自然排序的原理和图解(二叉树结构)
- java 集合中将元素倒序排列
- 使用ArrayList集合,对其添加100个不同的元素