0
A
回答
3
的变化非常频繁,答案是:这取决于。
假设您更改其中一个类的hashCode()实现。
1)if(你的应用程序没有保存它的数据) 然后,当你重新启动你的应用程序时,每一块都将使用新的实现。因此:没问题
2)if(你的应用程序确实存在它的数据) 然后,当你重新启动你的应用程序时将重新加载它的数据;并取决于你改变hashCode()的方式/地方......有趣的事情可能会发生。
对于第二个问题;有没有通用的方法来“解决”,但有一个众所周知的做法,如果你遵循他们,机会变得更小,有人搞砸了:
1)教育和技能:试图确保每个人都接触代码知道自己在做什么(而不是盲目地遵从命令“但你告诉我做xyz,所以我坐下来,确实xyz,根本不考虑后果是什么”)
2)好的设计, - 使用现有组件。喜欢:标准的java自带“已知”好套,地图,集合。你为什么认为你必须重新发明轮子,为什么你认为你的实施将会“更好”?
3)好的测试。做TDD,并确保每个新功能都具有涵盖其所有行为的单元测试。然后确保当有人将代码推入您的版本控制系统时,您的单元测试会自动运行;所以你注意到什么时候东西坏了。除此之外,为单元测试无法测试的方面构建合理的功能/集成测试。
相关问题
- 1. 哈希码实现
- 2. 如何实现动态哈希表的哈希函数?
- 3. 哈希表实现
- 4. 哈希映射和哈希码的变化,如何判断对象已经改变?
- 5. 如何找到哈希码有效性?
- 6. 解决方法哈希一个HashSet当内部对象改变
- 7. 实现哈希表的
- 8. Jenkins哈希的Javascript实现?
- 9. Jenkins哈希的Python实现?
- 10. hashset在哪里存储一个哈希码与已经在集合中的哈希码相匹配的对象?
- 11. 如何使用BST实现哈希表?
- 12. 哈希表如何在JavaScript中实现
- 13. JavaScript哈希映射如何实现?
- 14. 如何实现Hash#all?多维哈希?
- 15. 如何用链接实现哈希表?
- 16. 如何获得JavaScript实现的接口的哈希码
- 17. 实现哈希映射
- 18. 持久哈希表实现
- 19. Java哈希表实现
- 20. 自己实现哈希
- 21. 实现在哈希表
- 22. Java哈希表实现
- 23. 变化哈希jQuery中
- 24. 防止哈希变化
- 25. 如何呈现与哈希锚实例变量页面
- 26. 如何正确使用codeigniter实现PHPass密码哈希?
- 27. 重现SqlMembershipProvider密码哈希
- 28. HashSet的实现
- 29. 如何实现对最小堆O(1)删除与哈希表
- 30. 任何Java哈希树实现?
你是什么意思“改变运行时间”? – GhostCat
如果更改了哈希码实现,那么您编译并重新部署了新代码,因此当您重新启动代码时必须重新生成哈希集,那么问题是什么? – Andreas