java.util.TreeMap 行为问题

标签 java collections treemap

类文档声明 Entry 不能通过 .setValue(...) 修改,但也警告 put(...) 工作正常。

这是否意味着 put(...) 在像 navigableKeySet() 这样的 Collection View 上迭代时会正常工作(即,不会导致 ConcurrentModificationException ),只要不进行结构修改(即添加新 key )?

我正在测试它,但如果我无法中断迭代,我仍然希望验证它是否正常工作(而不是我无法中断它)。

最佳答案

The javadocs for TreeMap状态:

A structural modification is any operation that adds or deletes one or more mappings; merely changing the value associated with an existing key is not a structural modification.

因此,可以假设在迭代键集时更改与给定键关联的值是允许的。

关于java.util.TreeMap 行为问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3135246/

相关文章:

java - Joda 和 Java lang 整数不兼容

java - 使用日期和时间作为文本文件名创建新文本文件

java - 一个循环,要求输入一定数量的数字并输出其中有多少个是偶数

java - 从 LinearLayout 获取子元素

java - CollectionUtils.isEmpty(list) 如何工作?

Java TreeMap时间复杂度-lowerKey

java - 在Java中串行执行Threadgroup中的线程

collections - 安装 PECL 包 : Mysql_xdevapi 时出错

java - 使用值从 HashMap 中获取键

Java - 有序映射