我正在尝试修改此类以包含下一个引用的额外字段。有什么想法吗?
package project2;
public interface Entry<K,V> {
K getKey();
V getValue();
}
我正在尝试修改chainhashmap以执行与哈希映射相同的行为。
答案 0 :(得分:0)
不确定您要问的是什么,但这可能会有所帮助。
public final class Pair<L, R> {
private L left;
private R right;
public Pair() {
this(null, null);
}
public Pair(L initLeft, R initRight) {
left = initLeft;
right = initRight;
}
public synchronized L getLeft() {
return left;
}
public synchronized R getRight() {
return right;
}
public synchronized void setLeft(L newLeft) {
left = newLeft;
}
public synchronized void setRight(R newRight) {
right = newRight;
}
@Override
public synchronized boolean equals(Object other) {
if (other == null)
return false;
if (other instanceof Pair) {
Pair<?, ?> otherPair = (Pair<?, ?>) other;
return ((this.left == otherPair.left
|| (this.left != null && otherPair.left != null && this.left.equals(otherPair.left)))
&& (this.right == otherPair.right
|| (this.right != null && otherPair.right != null && this.right.equals(otherPair.right))));
}
return false;
}
@Override
public synchronized String toString() {
return "(" + left.toString() + "," + right.toString() + ")";
}
}
您可以使用Pair
作为地图条目中的值,left
作为实际值,right
作为您想要的next
值