Collections comparable

javo. utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:
public static boolean addAll (Collection c,t,… elements) :往集合中添加一些元索。

Collections. addALL(list, ..lements: "a","b","C","d","e");
System.out . println(list);//[a, b, C,d, e]

public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序。

System. out . println(list);//[a, b, C, d, e]
Collections . shuffle(list);
System. out . println(list);//[b, d, C, a, e]|

public static void sort(List list):将集合中元素按照默认规则排序。可以是数字或者字母

Collections .sort(list);//默认是升序

注意:
若是自定义的对象进行排序时
sort(List list )使用前提:被排序的集合里边存储的元素,必须实现Comparable,重写接口中的方法compareTo定义排序的规则
Comparable接口的排序规则:自己(this)-参数:升序 参数-自己(this):降序

//重写排序的规则
public int compareTo(Person 0) {
//return 0;//认为元素都是相同的
//自定义比较的规则,比较两个人的年龄(this,参数Person)
return this . getAge() - o.getAge();//年龄升序排序

public static void sort(List list, Comparator<? super T> ):将集合中元素按照指定规则排序。
Comparator和Comparable的区别
Comparable:自己(this )和别人(参数)比较,自己需要实现Comparable接口,重写比较的规则compareTo方法
Comparator:相当于找一个第三方的裁判,比较两个

Collections . sort(list01, new Comparator<Integer>() {
//重写比较的规则

	public int compare(Integer 01, Integer 02) {
		//return 01-o2;//升序.
		return 02-01;//降序
}
});

也可以多个排序条件

Collections .sort(list02, new Comparator<Student>() {

	public int compare(Student 01, Student o2) {
	//按照年龄升序排序
		int result = 01. getAge()-o2.getAge();
		//如果两个人年龄相同,再使用姓名的第一个字比较
		if(result==0){
			result = 01. getName().charAt(0)-o2.getName().charAt(e);
		}
		return result;
}
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值