我正在寻找最佳实践,我应该重写哈希码和等于每当我在java中使用地图?还是Map<String, String>
不需要?
String是一个API类,你没有权限修改,你甚至不能扩展它们,因为它们是final
。API有最好的等价实现和哈希码实现。
如果有一个好的已经是String
的情况下,你不必。事实上,你不能重写String的方法,因为它是final
。但是,如果您定义了自己的类,并且通常希望将其对象存储在集合中,那么您必须编写良好的hashCode/equals
方法。检查现有类型的文档,以检查它们是否适合一般地存储在集合中或更具体地存储在散列中。