关于Map.keySet()踩坑小记
来源:互联网 发布:unity3d 多人游戏实现 编辑:程序博客网 时间:2024/06/03 07:20
在对map的keyset进行迭代遍历的过程中如果修改了map,此时jdk说了,“the results of the iteration are undefined.”。如果不是用迭代器进行遍历呢?
那我问问大家,如果对map的keyset进行了修改会怎样呢?
答案是,map会跟着收到影响,谨记哦!keyset仅仅是map的一个key的set映射而已,是映射。。不是copyonwrite的。。
如果你不注意的话就会哭着喊,唉呀妈呀,写这么多年年代码,hashmap的put操作竟然执行了没生效,于是你满世界找是不是哪里remove了还是啥的,结果你会发现,例如你在对这个hashmap的keyset和另外的set进行交叉对比并执行了诸如removeAll时,竟然removeAll后keyset对应的map中相应的键值对也消失了!
最后跟我重复三遍:“map的keyset仅仅是key的一个映射集合,不是真的,别相信你眼睛,不信自己看源码去”
0 0
- 关于Map.keySet()踩坑小记
- Map.keyset()
- Map.keyset()
- map.keySet()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- Map.keyset()
- 关于Map遍历和Iterator的keySet和entrySet
- java基础--关于map的遍历keySet和entrySet
- 利用keyset遍历Map
- Map的keySet遍历
- Java Map --keyset
- map的keySet演示
- 编译原理-表驱动法初探
- 静态链表
- AS2.0 :Instant Run(热更新)
- 格式化输出
- 使用jad批量将class反编译为java时出现阻塞--解决办法
- 关于Map.keySet()踩坑小记
- Redis与Memcached的区别
- java基本语法
- HDU1717
- editplus与notepad++写python乱码
- Bring up interface eth0:Device eth0 does not seem to be present,delaying initialization
- 如何删除购物流程中的商品包装和祝福贺卡
- 用几何定位实现平移
- 文章标题