自定义类需要实现哪些方法(如果有)才能在Map
中用作键?
答案 0 :(得分:5)
这取决于你的地图类型:
HashMap
的密钥必须提供hashCode
和equals
TreeMap
的密钥需要通过实施compareTo
来提供Comparable<T>
,除非地图是使用Comparator
构建的,在这种情况下,密钥本身没有任何限制。 答案 1 :(得分:1)
如果你想使用TreeMap,你的类必须实现Comparable。如果您使用的是HashMap,则需要一个良好的哈希函数。