Collections工具类的静态方法sort与List接口中静态方法的sort的区别。

本文探讨了Java中Collections.sort()和List.sort()方法的不同之处。举例展示了当使用这两个方法对包含User对象的ArrayList进行排序时,如何处理自定义比较逻辑。Collections.sort()需要对象实现Comparable接口,而List.sort()则可以直接调用,但要求Java 8及以上版本。
摘要由CSDN通过智能技术生成

import java.util.*;
public class Test02
{
public static void main(String[] args)throws Exception//为了简单,将所有的异常都上抛。
{

List<User> list=new ArrayList(16);
list.addAll(List.of(new User("zhangsan",1,90),new User("lisi",2,92),new User("wangwu",3,68),new User("zhaoliu",4,78),
new User("zhansa",5,89),new User("zhanghe",6,95)));

//List.sort(list);//编译出错,该方法的参数是构造器。
Collections.sort(list);//必须继承了Comparable接口才能排序(也可传入构造器排序)

System.out.println(list);

Set<User> set=new TreeSet();//TreeSet集合会自动排序
set.addAll(List.of(new User("zhangsan",1,90),new User("lisi",2,92),new User("wangwu",3,68),new User("zhaoliu",4,78),
new User("zhansa",5,89),new User("zhanghe",6,95)));
System.out.println(set);
}

}


class User implements Comparable//User类实现Comp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值