我担心的是 Set of Sets (HashSet s) 是否也检查项目的顺序。我编写了一个应用程序来检查给定的整数集是否存在于整数集
昨天在一台计算机上不知何故我注意到什么 Set of Integers 是无序的(关于 HashSets 有什么可以的)但我担心并写了一些简单的 main 来检查它:
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]
:)
所以我的问题是如何比较集合?仅卜值?(对不起,如果这个问题听起来很愚蠢。)