1
sunjiayao 2021-07-27 23:04:01 +08:00
用 Arrays.stream().sorted()
|
2
6IbA2bj5ip3tK49j 2021-07-27 23:24:57 +08:00 1
Arrays.stream(x).sorted(Comparator.comparing(o -> ((int[]) o)[0]).thenComparing(o -> ((int[]) o)[1]))
|
3
aguesuka 2021-07-28 10:54:45 +08:00 1
Arrays.sort(array, Comparator.<int[]>comparingInt(arr -> arr[0])
.thenComparingInt(arr -> arr[1])); 3 个细节. 原地排序不需要使用 stream. 使用 comparingInt 而不是 comparing. 为 comparingInt 显示声明泛型参数<int[]> 而不是在 lambda 中 cast |
4
aguesuka 2021-07-28 11:15:31 +08:00 1
如果子数组的长度非固定或者非常长, 可以用 Java9 的 Arrays#compare(int[], int[]) , 它是根据 ArraysSupport#mismatch 实现的, 底层是 Unsafe 方法. 比自己写的 compare 好一些.
|
6
shiji OP 说来惭愧,虽然泛型经常用,这么用的却是第一次见到
|