最新回答 / wshyzx
详细的可以去看HashMap的contains实现,那里是equals和hashCode两个同时使用了,所以在有Map的时候,必须两个都要验证。HashSet也验证两个。但是在ArrayList里不验证hashCode,所以你不重写hashCode也无所谓。equals和hashcode方法要同时重写,并且要在equals为true的时候,hashCode必须要相同。这个已经是一种不成文的规定了,这两个方法要重写就要一起重写,而且IDE里也会将只重写一个视为警告。所以这两个方法要同时重写。
2014-10-29
最赞回答 / needself
就是一个for循环 里面 自增的i就是返回的值 比如第一次比较就正确了,i = 0 没有自增,就返回了0lastIndexOf同样是for循环,只不过 i = (obj.length - 1) , i开始--,一个比较方法,最后就是没有匹配的就i=-1,直接返回
2014-10-28