对List进行排序Collections.sort()

在Java中,Collections.sort() 方法是用来对List集合进行排序的。但是,需要注意的是,Collections.sort() 方法实际上有两个主要的重载版本,其中一个直接用于List,而另一个允许你提供一个自定义的Comparator来定义排序逻辑。

直接对List排序(自然排序)

如果你的List集合中的元素实现了Comparable接口,那么你可以直接使用Collections.sort(List<T> list)方法进行排序。这里的排序是基于元素的自然顺序,即元素类型必须实现Comparable接口,并且定义了如何比较两个元素。

List<String> list = Arrays.asList("banana", "apple", "orange");  
Collections.sort(list); // 按照字符串的自然顺序排序

使用自定义Comparator排序

如果你想要根据自定义的逻辑来排序List中的元素,或者List中的元素类型没有实现Comparable接口,那么你可以使用Collections.sort(List<T> list, Comparator<? super T> c)方法,并提供一个Comparator来实现你的排序逻辑。

List<String> list = Arrays.asList("banana", "apple", "Orange");  
// 使用自定义Comparator,忽略大小写进行排序  
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);  
  
// 或者使用Lambda表达式自定义排序逻辑  
Collections.sort(list, (a, b) -> {  
    return a.compareToIgnoreCase(b); // 忽略大小写比较  
});

 

 这行代码用于对一个字符串进行从大到小的排序(长度)

Collections.sort(list, (a,b)->{
            if (a.length() != b.length()) return b.length() - a.length();
            return a.compareTo(b);
        });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值