如何覆盖 Graphstream Node 对象的 hashCode()?
我将节点插入 HashSet。
HashSet<Node> set = new HashSet<Node>();
如何覆盖 Graphstream Node 对象的 hashCode()?
我将节点插入 HashSet。
HashSet<Node> set = new HashSet<Node>();
您可以从 Node 继承以使用Objects.hash(Object...)扩展此类中的对象哈希。只需将您想要散列在一起的任何内容都放入此方法中...
class MyNode extends Node {
// whatever floats you boat here
@Override
public int hashCode() {
return Objects.hash(super.hashCode(), other);
}
@Override
public boolean equals(Object o) {
// hashCode() and equals() overrides should always appear together
}
}
也许看看这里
编辑:不要忘记 equals() 覆盖!