首页 新闻 会员 周边 捐助

请问如何重写下面的equals方法和hashCode方法

0
[已解决问题] 解决于 2013-08-25 21:01

以下String类用于存储字符中,假设其实现如下: public final class String{ /**用于存储字符串的数组,字符串存储总是从 private final char value[]; /**指示存储的字符总数*/ private final int count; …… @Override public boolean equals(Object obj){

} @Override public int hashCode(){

} 请完整实现equals方法和hashCode方法(为了提高性能可以添加数组或者变量)

坠叶飘香的主页 坠叶飘香 | 初学一级 | 园豆:153
提问于:2013-08-20 16:43
< >
分享
最佳答案
0
 1 public int hashCode(){
 2   return value[0]-48;   
 3 }
 4 public boolean equals(Object obj)
 5 {
 6   if(obj==null) return false;
 7   if(obj instanceof String)
 8   {
 9     String objStr=(String)obj;
10     if(objStr.value.length==this.value.length)
11     {
12         for(int i=0;i<this.value.length; i++)
13         {
14             if(objStr.value[i] != this.value[i]) return false;
15         }
16         return true;
17     }
18     else
19     {
20        return false;
21      }
22   }
23   return false;
24     
25 }        
View Code
奖励园豆:5
乐享程序员 | 小虾三级 |园豆:930 | 2013-08-21 02:41
其他回答(1)
0

最简单的用eclipse自动生成

张洪玮 | 园豆:224 (菜鸟二级) | 2013-08-20 22:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册