默认情况下,JAVA使用哪些技术来处理哈希码冲突?它是单独链接还是依赖于不同平台的JVM实现?
答案 0 :(得分:0)
正如javadoc所解释的那样:
尽可能合理,Object类定义的hashCode方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但JavaTM编程语言不需要此实现技术。)
因此,如果JVM使用这种策略实现hashCode(),除非你有大量的堆空间并且非常不走运,否则你不会发生任何冲突。
也就是说,对象的hashCode()
在实践中并不是很重要,因为在HashMaps中用作键的大多数类都会覆盖hashCode()
方法。