Effective Java 英文 第二版 读书笔记 Item 9:Always override hashCode when you override equals
2016-06-07 09:39
411 查看
you must override hashCode in every class that overrides equals,particularly HashMap,HashSet,Hashtable.
The key provision that is violated when you fail to override hashCode is the second one:equal objects must have equal hash codes.
hashCode 生成基本方法,但是其实一般实体都有主键的存在,对主键hashCode即可,也能满足上面的约束;
小技巧 hashCode的结果可以缓存起来,不需要每次都计算
String,Integer,Date这些类的hashCode 返回这个实例的值,这不是一个很好方法,有待改进加强.
The key provision that is violated when you fail to override hashCode is the second one:equal objects must have equal hash codes.
hashCode 生成基本方法,但是其实一般实体都有主键的存在,对主键hashCode即可,也能满足上面的约束;
小技巧 hashCode的结果可以缓存起来,不需要每次都计算
String,Integer,Date这些类的hashCode 返回这个实例的值,这不是一个很好方法,有待改进加强.
相关文章推荐
- 《剑指offer》:[19]二叉树的镜像
- 《剑指offer》:[18]如何判断树B是树A的子结构
- AngularJS 遇到的小坑与技巧小结
- div css仿京东订单流程图样式代码
- box-shadow使用, border-radius使用
- jsp页面无故弹alert
- Bootstrap学习笔记之css样式设计(2)
- AngularJS 如何在控制台进行错误调试
- JQuery异步加载PartialView的方法
- H5文件操作API
- js页面跳转整理
- Html5 ajax的跨域请求
- AngularJS之WebAPi上传
- javascript中打印当前的时间
- 【Angular2】ng2的开始_组件
- js实现模态弹窗
- js验证邮箱是否输入以及格式是否正确
- 【Knockout.js 学习体验之旅】(2)花式捆绑
- 基于JS实现无缝滚动思路及代码分享
- jstl forEach标签动态循环生成tr