每个实现了Collection的类都会重写contains()方法

初探Collection接口中contains()方法的底层

接着我们去看contains()在ArrayList类中如何实现

public boolean contains(Object o) {
        return indexOf(o) >= 0;
    }

 public int indexOf(Object o) {
        if (o == null) {
            for (int i = 0; i < size; i++)
                if (elementData[i]==null)
                    return i;
        } else {
            for (int i = 0; i < size; i++)
                if (o.equals(elementData[i]))
                    return i;
        }
        return -1;
    }

通过观察源码,发现contains()方法的底层依赖的是equals()方法。

相关文章:

  • 2022-12-23
  • 2022-01-26
  • 2021-11-30
  • 2018-01-04
  • 2023-03-10
  • 2021-05-12
  • 2022-01-23
  • 2022-12-23
猜你喜欢
  • 2021-12-20
  • 2022-12-23
  • 2021-07-28
  • 2022-01-04
  • 2021-12-05
  • 2021-06-07
  • 2022-12-23
相关资源
相似解决方案