lau*_*cer 9 java collections list mutable
当对象可变时,TreeSet,HashSet或LinkedHashSet如何表现?我无法想象它们会在任何意义上起作用吗?
如果我在添加对象后修改它; 列表的行为是什么?
是否有比链表或数组等可变对象(我需要排序/索引/等)的收集处理,只是通过他们迭代,每次一个更好的选择?
tra*_*god 4
该Set接口直接解决了这个问题:“注意:如果将可变对象用作集合元素,则必须格外小心。如果对象的值以影响等于比较的方式更改,而对象的更改则不会指定集合的行为。是集合中的一个元素。此禁止的一个特殊情况是集合不允许将其自身包含为元素。”
Set
附录:
是否有更好的选择来处理可变对象的集合?
当尝试决定哪种集合实现最合适时,可能值得查看核心集合接口。特别是对于Set实现,只要正确实现equals()和,任何不相关的属性都可以是可变的。hashCode()类比数据库关系,任何属性都可以改变,但主键必须是不可侵犯的。
equals()
hashCode()
归档时间:
15 年,3 月 前
查看次数:
2903 次
最近记录: