根据标识排序整型数组
输入整型数组和排序标识,对其元素按照升序或降序进行排序
http://www.nowcoder.com/questionTerminal/dd0c6b26c9e541f5b935047ff4156309
要注意的是,Array.sort()是可以排序int[]类型的,但只能是默认升序;如果是想自定义Comparator降序,需要是包装类Integer[]才可以,所以在这里初始化直接使用Integer[]类型。
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextInt()) {
int count = in.nextInt();
Integer[] array = new Integer[count];
for(int i = 0; i < count; i++){
array[i] = in.nextInt();
}
int label = in.nextInt();
if(label == 0){
Arrays.sort(array);
}
else{
Arrays.sort(array,(o1,o2) -> o1>o2? -1 : 1);
}
StringBuilder sb = new StringBuilder();
//这里如果是特殊情况,比如0个数字会报错,但我赌它不会这么无聊,然后赌对了。
sb.append(array[0]);
for(int j = 1; j < count; j++){
sb.append(" ");
sb.append(array[j]);
}
System.out.println(sb);
}
}
}

