LinkedHashMapのように機能するが、equalsおよびhashCodeにも順序を反映するJavaコレクションはありますか?->同じ要素を持つが順序が異なる2つのマップは等しくなく、異なるハッシュコードを持つ必要があります。
Peter Lawreyの回答に基づくソリューション(xAxisはLinkedHashMapです):
ハッシュコード:
...
result = prime * result + ((xAxis == null) ? 0 : xAxis.hashCode() + xAxis.toString().hashCode());
...
等しい:
...
if (xAxis == null) {
if (other.xAxis != null) {
return false;
}
} else if (!xAxis.equals(other.xAxis)) {
return false;
} else if (!xAxis.toString().equals(other.xAxis.toString())) {
return false;
}
...
(日食によって生成されたコードに基づいています)