如何对哈希集进行排序?
2022-08-31 08:12:56
对于列表,我们使用该方法。如果我们想对一个进行排序怎么办?Collections.sort(List)
HashSet
对于列表,我们使用该方法。如果我们想对一个进行排序怎么办?Collections.sort(List)
HashSet
哈希集不保证其元素的任何顺序。如果需要此保证,请考虑使用树集来保存元素。
但是,如果您只需要为这次事件对元素进行排序,则只需临时创建一个 List 并对其进行排序:
Set<?> yourHashSet = new HashSet<>();
...
List<?> sortedList = new ArrayList<>(yourHashSet);
Collections.sort(sortedList);
将所有对象添加到树集
,您将获得一个排序集。下面是一个原始示例。
HashSet myHashSet = new HashSet();
myHashSet.add(1);
myHashSet.add(23);
myHashSet.add(45);
myHashSet.add(12);
TreeSet myTreeSet = new TreeSet();
myTreeSet.addAll(myHashSet);
System.out.println(myTreeSet); // Prints [1, 12, 23, 45]
您还可以使用 TreeSet
的构造函数,它将 a 作为参数。HashSet
HashSet myHashSet = new HashSet();
myHashSet.add(1);
myHashSet.add(23);
myHashSet.add(45);
myHashSet.add(12);
TreeSet myTreeSet = new TreeSet(myHashSet);
System.out.println(myTreeSet); // Prints [1, 12, 23, 45]
感谢@mounika的更新。