Java中Arrays.sort()一维数组的升序、降序、区间排序
目录
一、升序
二、降序
三、区间排序
四、重载排序
一、升序
Arrays.sort(数组名)
import java.util.Arrays;// Arrays.sort 排序
public class Text1 {public static void main(String[] args) {int []a = {11,33,22,66,88,99,77,55,44};Arrays.sort(a);for (int count : a){System.out.print(count + "\t");}}
}
二、降序
Arrays.sort(数组名,Collections.reverseOrder())
注意:数组不能是基本数据类型
那应该怎么用呢?大家都知道在这些数据类型都来自他们对应的类(对象),可以根据下面这张表替换:
import java.util.Arrays;
import java.util.Collections;// Arrays.sort 排序
public class Text1 {public static void main(String[] args) {Integer []a = {11,33,22,66,88,99,77,55,44};
// Arrays.sort(a);Arrays.sort(a, Collections.reverseOrder());for (int count : a){System.out.print(count + "\t");}}
}
运行结果:
三、区间排序
Arrays.sort(数组名,int formIndex(起始位置), int toIndex(终止位置))
import java.util.Arrays;
import java.util.Collections;// Arrays.sort 排序
public class Text1 {public static void main(String[] args) {Integer []a = {11,33,22,66,88,99,77,55,44};
// Arrays.sort(a);
// Arrays.sort(a, Collections.reverseOrder());Arrays.sort(a,1, 5);for (int count : a){System.out.print(count + "\t");}}
}
运行结果:
四、重载排序
Arrays.sort(数组名, new Comparator<数据类型对应的类>() {@Overridepublic int compare(数据类型对应的类 o1, 数据类型对应的类 o2) {return 重载方式;} });
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;// Arrays.sort 排序
public class Text1 {public static void main(String[] args) {Integer []a = {11,33,22,66,88,99,77,55,44};
// Arrays.sort(a);
// Arrays.sort(a, Collections.reverseOrder());
// Arrays.sort(a,1, 5);Arrays.sort(a, new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return o2 - o1;}});System.out.println(Arrays.toString(a));
// for (int count : a){
// System.out.print(count + "\t");
// }}
}
运行结果: