编程之战 第三百九六章 开链法(上)
作者:程序小猿的小说      更新:2019-05-23

  Java集合API提供了好几种散列实现。

  其中的HashMap类使用较为广泛。

  它是怎样处理碰撞问题的呢?

  首先,它的底层数组元素是一个链表的形式。

  在发生碰撞的时候,它会区分为两种情况。

  一种情况会采取覆盖行为。

  另一种则是把新插入的元素作为链表的头部,由数组直接引用。

  判断的标准是Java特有的语言特性:

  equals方法

  但这种处理碰撞的思路,却是通用的。

  它被称为开链法。

  (chaining_method)