利用 Arrays.sort()
根据flag,决定Comparator的compare函数写法
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNextInt()){
int num=sc.nextInt();
Integer[] arr=new Integer[num];
for (int i = 0; i <num; i++) {
arr[i]=sc.nextInt();
}
int flag=sc.nextInt();
Arrays.sort(arr,new Comparator<Integer> (){ //注意arr不能是int,需要时 integer类型
@Override
public int compare(Integer o1, Integer o2) {
if(flag==0){
return o1-o2; //升序
}else if(flag==1){
return o2-o1;
}
return 0;
}
});
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
}

京公网安备 11010502036488号