gpt4 book ai didi

java - 在abstractmap类内部,为什么remove()不显示UnsupportedOperationException?

转载 作者:行者123 更新时间:2023-12-01 18:44:03 24 4
gpt4 key购买 nike

我正在阅读[AbstractMap][1]的代码,我看到了

 public V More ...put(K key, V value) {
throw new UnsupportedOperationException();
}

put() 方法抛出异常。

虽然remove()有一个很大的实现。并且不会抛出此异常。

有人能解释一下为什么这么偏见吗?

最佳答案

默认的remove操作只是迭代条目集而不是聪明。 remove 可以“总是”1 以这种方式实现,即使速度慢得令人痛苦。

put 始终需要了解精确的实现细节,包括 map 是否可修改。

对于不可修改的映射,迭代器不支持remove,尽管这看起来不平衡。

<小时/>

1 仅当迭代器支持删除时,这才是正确的,如文档所述。

关于java - 在abstractmap类内部,为什么remove()不显示UnsupportedOperationException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18640822/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com