Java Array.sort的六种常用方法总结
Posted 莉妮可丝的猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java Array.sort的六种常用方法总结相关的知识,希望对你有一定的参考价值。
Arrays.sort()的六种用法
一:直接用,升序排序
/**
* 用法一,升序排序
*/
int[] nums1 = new int[]4, 6, 8, 0, 5, 9, 7, 2, 1, 3;
Arrays.sort(nums1);
二:传入参数 fromIndex、toIndex,部分升序排序
/**
* 用法二,部分升序排序
*/
int[] nums2 = new int[]4, 6, 8, 0, 5, 9, 7, 2, 1, 3;
Arrays.sort(nums2, 0, 3);
三:重写比较器Comparator,降序排序
/**
* 用法三,降序排序
*/
Integer[] nums3 = new Integer[]4, 6, 8, 0, 5, 9, 7, 2, 1, 3;
Arrays.sort(nums3, new Comparator<Integer>()
@Override
public int compare(Integer o1, Integer o2)
return o2 - o1;
);
四:结合二和三(传参 + 重写),部分降序排序
/**
* 用法四,部分降序排序
*/
Integer[] nums4 = new Integer[]4, 6, 8, 0, 5, 9, 7, 2, 1, 3;
Arrays.sort(nums4, 0, 3, new Comparator<Integer>()
@Override
public int compare(Integer o1, Integer o2)
return o2 - o1;
);
五:二维数组的特殊排序
/**
* 用法五,二维数组排序
* 根据nums5[i][0]排序, 若num5[i][0]相同,则根据nums5[i][1]排序
*/
int[][] nums5 = new int[][]1, 3, 1, 2, 4, 5, 3, 7;
Arrays.sort(nums5, new Comparator<int[]>()
public int compare(int[] a, int[] b)
if(a[0]==b[0])
return a[1] - b[1];
else
return a[0] - b[0];
);
六:与五一样,写法不同
/**
* 用法六,与用法五一样,写法不同
*/
int[][] nums6 = new int[][]1, 3, 1, 2, 4, 5, 3, 7;
Arrays.sort(nums6, (a,b) -> (a[0]==b[0] ? a[1] - b[1] : a[0] - b[0]));
输出结果
待补充
以上是关于Java Array.sort的六种常用方法总结的主要内容,如果未能解决你的问题,请参考以下文章