我正在寻找最佳实践,我应该重写hashcode和equalse每当我在java中使用映射?或者对于Map<String, String>
它不是必需的?字符串映射的最佳实践,覆盖hashcode和equlas
2
A
回答
3
字符串是一个API类,你不能修改,你甚至不能扩展它们,因为它们是final
。 API具有最佳的equals和hash代码实现。先锋并使用它们。
1
您不必如果已经有一个很好的String
就是这种情况。事实上,你不能重写String的方法,因为它是final
。但是,如果你定义了自己的类,并且你想将它的对象存储在一个集合中,那么你必须编写一个好的方法hashCode/equals
。检查现有类型的文档以检查它们是否适合存储在一般的集合中或更具体地散列化。
相关问题
- 1. 覆盖静态类的最佳实践
- 2. C - 字符串的最佳实践
- 3. 在Hibernate中映射一个本地化的字符串 - 任何最佳实践?
- 4. 最佳实践从字符串
- 5. 字符串常量...最佳实践?
- 6. SyliusTaxonomyBundle覆盖分类实体和映射
- 7. 将数据库和XML映射到对象的最佳实践
- 8. 使用XML和XSD映射数据库的最佳实践
- 9. OpenCL缓冲区分配和映射的最佳实践
- 10. 覆盖引导默认字体(最佳实践)
- 11. 字符串和运算符:最佳实践,与+
- 12. 最佳实践条件与字符串和数字
- 13. 实现字符串映射
- 14. 转义XML字符的最佳实践?
- 15. pyelasticsearch映射覆盖
- 16. 将MVC控制器映射到视图的最佳实践?
- 17. 在客户端映射webservice端点的最佳实践
- 18. 关于类型映射的最佳实践
- 19. 创建键/值映射的最佳实践dev/prod node.js
- 20. 异步映射移动的最佳实践
- 21. 写入文件最佳实践(锁定文件/覆盖)
- 22. 如何在函数中注入/覆盖代码?最佳实践?
- 23. 最佳实践,覆盖__construct()与提供init()方法
- 24. 使用带有NSString的url字符串的最佳实践stringWithFormat
- 25. .NET格式化字符串 - 评论的最佳实践?
- 26. C#SQL连接字符串的最佳实践
- 27. 最佳实践:10000+字符串的Angularfire数据库结构
- 28. 存储多语言字符串的最佳实践
- 29. ASP.NET连接字符串部署的最佳实践
- 30. 匹配最佳实践的Scala字符串模式
尝试覆盖'String'的equals和hashcode。这是不可能的,因为String类被声明为final。如果equals方法被对象类继承,或者如果您从另一个对象继承,并且需要比较这个新类中的其他信息,则只应该重写'equals'和'hashcode' – SomeJavaGuy