HashSet は、 equals メソッドがそれらが同じであると言う場合、値 1 のみを格納します。私もそう思っていました。
しかし、今、equals メソッドが true を返し、セットのサイズがまだ大きくなる HashSet に Elements を追加していますか?? すみません、混乱しています。私が間違っているいくつかのヒントはいいでしょう。
Element t1 = new Element(false, false, false, false);
Element t2 = new Element(true, true, true, true);
Element t3 = new Element(false, false, false, false);
if (t1.equals(t3))
System.out.println("they're equal");
Set<Element> set = new HashSet<>();
set.add(t1);
set.add(t2);
set.add(t3);
System.out.println("set size: " + set.size());
この例では、私のコンソール出力は次のとおりです。
それらは等しい
セットサイズです: 3
それは私には意味がありません..サイズは2であるべきですか?