黑马程序员技术交流社区
标题:
通过集合来说数组的逆序排序
[打印本页]
作者:
萧未然
时间:
2015-11-21 10:48
标题:
通过集合来说数组的逆序排序
今天复写,看到集合的逆自然排序,想到了数组,翻看了一下API,数组也是有逆序排序的方式的,跟集合差不多啦
import java.util.*;
/**
* 逆转数组自然顺序理解
* @author Administrator
*
*/
public class TestReverseArray {
public static void main(String[] args) {
Integer [] arr={3,5,2};
System.out.println(Arrays.toString(arr));//无序
Arrays.sort(arr,Collections.reverseOrder());//逆转自然顺序
System.out.println(Arrays.toString(arr));//结果:5,3,2
Arrays.sort(arr,new Mycom());//传入一个自定义比较器,降序的
System.out.println(Arrays.toString(arr));//5,3,2
//reverseOrder()逆转的时候,会在内部对数组进行sort()--因为基本数据类型都具备比较性
//即升序,当做该数组的自然顺序,在此基础上,再逆转,这是跟集合中对象的排序差别的地方
Arrays.sort(arr,Collections.reverseOrder());//后面的逆的都是自然顺序sort()
System.out.println(Arrays.toString(arr));//结果仍然是5,3,2
Arrays.sort(arr,Collections.reverseOrder());
System.out.println(Arrays.toString(arr));
}
}
class Mycom implements Comparator<Integer>{//自定义比较器
public int compare(Integer a,Integer b){
return b.compareTo(a);//降序
}
}
复制代码
作者:
萧未然
时间:
2015-11-21 10:53
数组升序用Arrays.sort(Object[] obj);逆序用Arrays.sort(<T>[] a,Collections.reverseOrder());
作者:
一江夜雨
时间:
2015-11-21 22:37
最近在学习集合的知识 正好过来看看 学习
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2