大致概要:java中的Arrays.sort()方法类似于C++中的sort()快排。
默认排序:升序。
使用对象:基本数据类型数组和引用类型数组。
- 当要对基本数据类型数组(int,double等)进行默认排序时(升序),可以直接将数组名作为调用参数。(Arrays.sort(数组名))
- 当要对基本数据类型数组进行逆序排序时,需要将基本类型数组转化为相对于的引用数据类型(Arrays.sort(数组名,实现Comparator接口的类)
使用样例:
import java.util.*;
public class J_Arraysort {
public static void main(String args[]) {
int a[]=new int[] {1,2,3,4,5,6,7,8,9,10};
int b[]=new int[] {10,9,8,7,6,5,4,3,2,1};
int i;
//默认升序
Arrays.sort(b);
System.out.print("对数组b进行默认升序:");
for(i=0;i<b.length;i++) System.out.print(b[i]+" ");
System.out.print("\n");
//******************
Integer num[]=new Integer[a.length];
for(i=0;i<a.length;i++) num[i]=new Integer(a[i]);
Arrays.sort(num,new Comparator<Integer>() {
public int compare(Integer n,Integer m) {
return(m-n);
}
});
System.out.print("对数组a进行逆序排序:");
for(i=0;i<num.length;i++) System.out.print(num[i]+" ");
}
}
样例输出:
对数组b进行默认升序:1 2 3 4 5 6 7 8 9 10
对数组a进行逆序排序:10 9 8 7 6 5 4 3 2 1
扩展:Arrays.sort(数组名,int beginIndex,int endIndex),作用不言而喻。