代码之家  ›  专栏  ›  技术社区  ›  Mehraj Malik

在可选的[duplicate]中使用hashCode的目的是什么

  •  -1
  • Mehraj Malik  · 技术社区  · 6 年前

    有人能解释一下为什么java人会重写 hascode Optional

    2 回复  |  直到 6 年前
        1
  •  5
  •   Eran    6 年前

    它允许你储存 Optional equals hashCode )在 HashSet HashMap s。

    可选的 没有覆盖 等于 哈希码 ,将输出以下代码 2 1 :

    Map<Optional<String>,String> map = new HashMap<>();
    map.put(Optional.of("someKey"),"someValue");
    map.put(Optional.of("someKey"),"someOtherValue"); 
    System.out.println(map.size());
    
        2
  •  0
  •   rechandler    6 年前

    来自JavaDoc:

    所以您可以检查Optional中的对象是否彼此相等。它也与 equals 方法。