在Java中,`Set`集合的排序可以通过以下几种方式实现:
自然排序
当`Set`中的素实现了`Comparable`接口时,`TreeSet`会根据素的自然顺序进行排序。
import java.util.TreeSet;public class Main {public static void main(String[] args) {TreeSetset = new TreeSet<>(); set.add(20);set.add(16);set.add(22);set.add(14);set.add(10);set.add(28);for (Integer i : set) {System.out.println(i);}}}
自定义比较器排序
当`Set`中的素没有实现`Comparable`接口时,可以通过提供一个`Comparator`对象来指定排序规则。
import java.util.Comparator;import java.util.TreeSet;public class Main {public static void main(String[] args) {TreeSetset = new TreeSet<>(new Comparator () { @Overridepublic int compare(Integer o1, Integer o2) {return o1 - o2;}});set.add(20);set.add(16);set.add(22);set.add(14);set.add(10);set.add(28);for (Integer i : set) {System.out.println(i);}}}
使用`Collections.sort()`方法
如果`Set`中的素是`Integer`类型,也可以先将`Set`转换为一个`List`,然后使用`Collections.sort()`方法进行排序。
import java.util.ArrayList;import java.util.Collections;import java.util.HashSet;import java.util.List;import java.util.Set;public class Main {public static void main(String[] args) {Setset = new HashSet<>(); set.add(20);set.add(16);set.add(22);set.add(14);set.add(10);set.add(28);Listlist = new ArrayList<>(set); Collections.sort(list);System.out.println(list);}}
以上示例展示了如何使用`TreeSet`进行排序。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/135117.html