浏览 155 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (7)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-07-15
package wukun;
public class Stu {
private String name;
private String sex;
public Stu(String name, String sex) {
super();
this.name = name;
this.sex = sex;
}
}
package wukun;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Set;
public class HashCodeTest {
public static void main(String[] args) {
// Set h1 = new HashSet();
// Set h2 = new HashSet();
//
// ArrayList a1 = new ArrayList();
// ArrayList a2 = new ArrayList();
//
//// a1.add(new String("abc"));
//// a2.add(new String("abc"));
//
// h1.add(a1);
// h2.add(a2);
//
// System.out.println(h1.hashCode());
// System.out.println(h2.hashCode());
//
Stu s1 = new Stu("wukun","男");
Stu s2 = new Stu("wukun","男");
System.out.println(s1.hashCode());
System.out.println(s2.hashCode());
}
}
运行打印的结果不一样,谁能解释一下为什么啊,我看好多帖子说,只要是对象内容一样,hashCode的值就一样,这是为什么呢。 还有为什么我注释掉的部分显示的2个内容一样的set对象的hashcode就是一样的呢。 谁能解释一下 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-07-19
javaEye, 不过如此。。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-07-26
晕不是值一样,朋友,是应用地址一样才行的,比如
String a="aa"; String b=a; 这样a,b是引用相同的对象,他们的hashcode才是相同的 |
|
| 返回顶楼 | |



