题解 | #明明的随机数#
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
import java.io.*;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
String s = br.readLine();
int i = Integer.parseInt(s);
//int[] array = new int[i];不能用基础类型,array转set后,set存的是数组的引用,set转list也是存的数组的引用;
Integer[] array = new Integer[i];
while (i!=0){
array[--i] = Integer.parseInt(br.readLine());
}
//方式一
Set<Integer> set = new HashSet(Arrays.asList(array));
// TreeSet<Object> ts = new TreeSet<>(set);
// ArrayList<Integer> list = new ArrayList(set);
// Collections.sort(list, new Comparator<Integer>() {
// @Override
// public int compare(Integer o1, Integer o2) {
// return o1-o2;
// }
// });
// for (Integer x : list) {
// System.out.println(x);
// }
//方式二
// Integer[] a2 = set.toArray(new Integer[0]);//括号中的参数实际上传的是数组地址
// //Arrays.sort(a2, Collections.reverseOrder());
// Arrays.sort(a2);
// for (Integer x : a2) {
// System.out.println(x);
// }
//方式三
TreeSet ts1 = new TreeSet<>(set);
TreeSet<Integer> ts = new TreeSet(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
});
ts.addAll(ts1);
for (Integer t : ts) {
System.out.println(t);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}


阿里云成长空间 763人发布