class test1 {
private String name;
private int age;
public boolean equals(Object obj)
{
if (obj instanceof test1)
{
test1 objtemp = (test1) obj;
if (name.equals(objtemp.name) && age == objtemp.age)
{
return true;
}
else {
return false;
}
}
else
{
return false;
}
}
public int hashCode()
{
return name.hashCode() + age;
}
}只是个hashmap的东西
equals的方法好不容易理解明白了
...但是这个hashcode方法到底返回的是一个什么东西...
这个hashcode方法到底是什么时候被调用的?
private String name;
private int age;
public boolean equals(Object obj)
{
if (obj instanceof test1)
{
test1 objtemp = (test1) obj;
if (name.equals(objtemp.name) && age == objtemp.age)
{
return true;
}
else {
return false;
}
}
else
{
return false;
}
}
public int hashCode()
{
return name.hashCode() + age;
}
}只是个hashmap的东西
equals的方法好不容易理解明白了
...但是这个hashcode方法到底返回的是一个什么东西...
这个hashcode方法到底是什么时候被调用的?
解决方案 »
- 请问到哪下载org.apache.lucene.analysis包和jeasy.analysis.MMAnalyzer包啊
- drools规则引擎条件定义的问题
- SWT中的styledtext问题
- 如何实现利用Socket保存一个网站
- JDK5.0怎么去除类型转换的警告?
- 新手问问题
- 怎么安装和使用oracle9i的oci 驱动?
- 用JFrame 背景色不改变,而是Frame的时候可以改变
- 请问java程序中的import为什么有的用java.….*,而有的又用java.….…,有什么区别吗?
- 急问,java的io操作!??
- 邪门儿,照搬的Java程序都出那么都运行不出来,
- 高手帮我看一下这样的接口设计合不合理
2:在重写 equals 方法时,应该考虑 hashcode 的返回值,如果 equals 方法返回 ture 那么,进行比较的两个对象的 hashcode 方法返回的值应该是一致的。
基本上自己用不上这个hashcode~?
定义native方法主要是用来定义java程序与外部非java程序进行交互的接口