Possible Duplicate:
Hashset vs Treeset
你可以使用 HashSet
和TreeSet
可以互换吗?如果我交换TreeSet
对于 Hashset
反之亦然,在程序中会出现什么问题?我知道您需要实现 Comparable
对于TreeSet
.
最佳答案
如果某些 API 需要 Set
,那么您传递哪个实现绝对无关紧要。如果它需要具体类型(不太可能),则不能混合它们。
一般来说,它们的区别在于性能(HashSet
更快),但这不应该影响程序的行为方式和顺序。 HashSet
中项目的顺序是不可预测的。如果您的程序依赖于任何此类顺序,则应该使用 LinkedHashSet
或 TreeSet
。
关于java - 互换 HashSet 和 TreeSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12077715/