私の懸念は、セットのセット(HashSet)がアイテムの順序もチェックするかどうかです。指定された整数のセットが整数のセットのセットに存在するかどうかをチェックするアプリを作成しました
どういうわけか昨日あるコンピューターで、整数のセットが順序付けられていないことに気づきました(HashSetsについては何が問題ありません)が、心配して、それをチェックするための簡単なメインを書きました:
public static void main(String[] args) {
Set<Set<Integer>> set1 = new HashSet<Set<Integer>>();
Set<Integer> set2 = new HashSet<Integer>();
Set<Integer> set3 = new HashSet<Integer>();
set3.add(14); set3.add(2); set3.add(9); set3.add(3); set3.add(5);
set1.add(set3);
set3 = new HashSet<Integer>();
set3.add(6); set3.add(7); set3.add(8); set3.add(9); set3.add(10);
set1.add(set3);
set2.add(9); set2.add(14); set2.add(5); set2.add(2); set2.add(3);
System.out.println(set1);
System.out.println(set2);
if(set1.contains(set2)){
System.out.println(":)");
}else
System.out.println(":(");
}
問題は、このマシンでHashSetが注文されていることを確認することです。出力は次のとおりです。
[[2, 3, 5, 9, 14], [6, 7, 8, 9, 10]]
[2, 3, 5, 9, 14]
:)
だから私の質問は、セットをどのように比較するかです。Bu値のみ?(質問がばかげているように聞こえたらごめんなさい。)