关于java中的各种排序方法。一般用于排序的方法所需的参数要么是构造器,要么直接传入需要的数组或集合作为参数(则数组元素或集合元素一般需要实现Comparable接口)。

例子:
import java.time.LocalDate;
import java.util.*;
public class Main
{
public static void main(String[] args) {
LocalDate localDate1=LocalDate.of(1980,12,12);
LocalDate localDate2=LocalDate.of(2000,6,3);
LocalDate localDate3=LocalDate.now();
List<LocalDate> list=new ArrayList<>(16);
list.add(localDate1);
list.add(localDate2);
list.add(localDate3);
list.sort((a,b)->a.compareTo(b));//对于重写了toString()方法的类,排序时可采用compareTo方法排序
List<Integer> list2=new ArrayList<>(8);

int i=0;
while(i<8)
{
list2.add(new Random().nextInt());
i++;
}
System.out.println(list);
list2.sort((a,b)->a-b);//对于数字包装类,可直接采用数学加减进行排序
System.out.println(list2);
list2.sort((a,b)->b.compareTo(a));//倒序,数字包装类也实现了toString()方法,也可用compareTo()方法排序
System.out.println(list2);

}

//List接口中的sort方法需要一个Comparator参数(构造器)
}
/*运行结果:
[1980-12-12, 2000-06-03, 2021-12-13]
[-785204556, -297744747, 757643329, 1352144821, 1560995725, 1744759432, 2068967203, -1093593561]
[2068967203, 1744759432, 1560995725, 1352144821, 757643329, -297744747, -785204556, -1093593561]
*/


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值