HashSet中加入自定义的类的对象,不重复加入自定义
来源:互联网 发布:oracle数据库基础 编辑:程序博客网 时间:2024/05/21 19:31
HashCode的重写
HashCode的重写
如第2节所讲,哈希码要完成这么一件事,首先要保证如果equlas出来的结果相等,那么hashCode也相等。像上面的u1和u2,由于名字都是“张三”,所以应该返回相同的hashCode。所以我们可以想一个办法。让User的哈希码返回User里面name字段的哈希码,这样就保证,名字相同的人,不但equlas方法相同,而且hashCode相等。 那么User类就变成
public class User{
private String userName;
//覆盖Object里的equals方法
public boolean equals(Object arg0){
if(!(arg0 instanceof User)){
return false;
}
User user = (User)arg0;
//如果名字相同,则表示属于同一个对象。
if (user.getName().equals(this.getName)){
return true;
}else{
return false;
}
}
//覆盖Object里的hashCode方法
public int hashCode() {
return name.hashCode();//返回名字的哈希码。
}
}
这样可以保证hibernate根据我们自己的需求来判断重复对象
本文来自百度百科“哈希码”最后一章节
http://baike.baidu.com/view/2428359.htm
- HashSet中加入自定义的类的对象,不重复加入自定义
- Java学习拾遗3——HashSet中加入自定义的类的对象
- 【Java学习笔记】HashSet中加入自定义的类的对象
- HashSet保存自定义不重复对象
- 在ServiceManager中加入自定义的服务
- 加入header的自定义GridView
- 在smarty中加入自定义的常量格式的方法
- 在smarty中加入自定义的常量格式的方法 .
- 在应用程序文件夹中加入你的自定义ICO
- SQL: 查询结果中加入自定义的列
- 如何将自定义的三方库加入到cocoapods中管理
- 向界面中加入自定义View的几种方式
- log4Net加入的自定义日志信息
- karaf加入自定义log4j的配置
- 把自定义的muxer加入ffmpeg源码
- 把自定义的demuxer加入ffmpeg源码
- 把自定义的decoder加入ffmpeg源码
- 把自定义的demuxer加入ffmpeg源码
- SQL Server LocalDB 在 ASP.NET中的应用
- XMPP协议实现原理介绍
- Building Coder(Revit 二次开发) - GetInstanceGeometry() 的开销和无效的引用
- Qt中文化方法
- 初识XML(一)
- HashSet中加入自定义的类的对象,不重复加入自定义
- QT工具栏图标设置
- QT带有主创窗口应用程序的创建
- Ajax学习(三),对GET方式或者URL传送中文时的乱码解决
- Excel VBA真正的动态数组实例
- windows下察看程序中包含的库的方法
- VC—>add files to folder失效
- 8259a中断控制器
- Big Data Counting: How To Count A Billion Distinct Objects Using Only 1.5KB Of Memory