欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > Java核心API——Collection集合的工具类Collections

Java核心API——Collection集合的工具类Collections

2025/2/8 10:42:46 来源:https://blog.csdn.net/qishuang6/article/details/141470009  浏览:    关键词:Java核心API——Collection集合的工具类Collections

集合的排序

int类型的排序 

* 集合的排序
* java.util.Collections是集合的工具类,提供了很多static方法用于操作集合
* 其中提供了一个名为sort的方法,可以对List集合进行自然排序(从小到大)
        List<Integer> list = new ArrayList<>();Random random = new Random();for (int i = 0; i < 10; i++) {list.add(random.nextInt(100));}System.out.println(list);Collections.sort(list, new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return o2 - o1;}});System.out.println(list);//集合的乱序Collections.shuffle(list);System.out.println(list);

自定义排序 

 

public class SortListDemo2 {public static void main(String[] args) {List<Point> list = new ArrayList<>();Random random = new Random();for (int i = 1; i < 10; i++) {list.add(new Point(random.nextInt(100), random.nextInt(100)));}System.out.println(list);/*sort方法在排序是要求集合元素必须实现:Comparable接口开发中我们定义的类不会去实现这个接口该排序功能对我们代码具有侵入性侵入性:当我们使用某给API功能时,其放过来要求我们为他实现接口或做某些继承并定义相关方法时,可以认定该API功能对我们代码有侵入性*///Collections.sort(list);//编译不通过Collections.sort(list, new Comparator<Point>() {@Overridepublic int compare(Point o1, Point o2) {int Olen1 = o1.getX() * o1.getX() + o1.getY() * o1.getY();int Olen2 = o2.getX() * o2.getX() + o2.getY() * o2.getY();return Olen1 - Olen2;}});System.out.println(list);}
}
//只用一次所以用匿名内部类
//class MyComparator implements Comparator{
//    @Override
//    public int compare(Object o1, Object o2) {
//        return 0;
//    }
//}

字符串排序 

    public static void main(String[] args) {List<String> list=new ArrayList<>();list.add("tom");list.add("durant");list.add("kobe");list.add("jam");list.add("mary");list.sort(new Comparator<String>() {@Overridepublic int compare(String o1, String o2) {return o1.length()-o2.length();}});System.out.println(list);Collections.sort(list);System.out.println(list);List<String> list1=new ArrayList<>();list1.add("你好啊");list1.add("哇你好( •̀ ω •́ )");list1.add("你好");Collections.sort(list1, new Comparator<String>() {@Overridepublic int compare(String o1, String o2) {return o1.length()-o2.length();}});System.out.println(list1);}

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com