【答案一】
import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNext()){
              int num=sc.nextInt();
              int[] array=new int[num];
              for(int i=0;i<num;i++){
                  array[i]=sc.nextInt();
              }
              int sort=sc.nextInt();
              Arrays.sort(array);
                if(sort==0){
                   for(int i:array){
                     System.out.print(i+ " ");
                  }
                }else if(sort==1){
                    for(int i=array.length-1;i>=0;i--){
                       System.out.print(array[i]+ " ");
                    }
                }
        }
    }
}

【答案二】
// 思路:本题考查对数组的排序 可以先将元素存入 arraylist 中, 再调用arraylist.sort(Comparator c)进行排序
 
/*  arraylist.sort(Comparator c) : 
    元素进行升序排列: Comparator.naturalOrder()  元素进行降序排列:Comparator.reverseOrder()
*/
 
importjava.util.*;
publicclassMain{
    publicstaticvoidmain(String[] args) {
        Scanner sc = newScanner(System.in);
        while(sc.hasNextInt()){
            intsize = sc.nextInt(); //接收数组元素个数
            List<Integer> list = newArrayList<>();
            for(inti = 0; i < size; i++) {  //按数组元素个数 循环接收元素
                list.add(sc.nextInt());  //将每一元素放入 list 中
            }
            intrule = sc.nextInt();  //接收排序规则:一个整数0或1。0代表升序排序
            if(rule == 0){  // 0代表升序排序
                list.sort(Comparator .naturalOrder());
            }elseif(rule == 1){  // 1代表降序排序
                list.sort(Comparator .reverseOrder());
            }
            for(Integer n : list){  // 将 list 元素输出,注意元素间用空格隔开
                System.out.print(n+ " ");
            }
        }
    }
}