gpt4 book ai didi

Java基于三列对数组进行排序

转载 作者:行者123 更新时间:2023-11-29 03:52:30 24 4
gpt4 key购买 nike

在学习 Java 的过程中,我遇到了一个疑问。

我们可以使用 Arrays.sort() 对一维数组进行排序,但是如果我想根据三列对二维数组进行排序呢?是否有任何选项可以解决这个问题,还是我必须自己编写代码(类似于三个嵌套循环)?

这是一个示例输入:

13  2   28  36  
1 4 56 17
4 2 5 40
2 4 41 55
9 5 48 12
19 2 25 12
20 5 13 8
15 3 51 30
12 5 39 59
17 3 56 40
3 1 56 46
7 3 28 51
8 5 14 58
5 3 34 15
14 4 53 2
18 4 38 57
6 2 16 25
16 3 17 13
10 5 41 33
11 1 13 57

列是 int,它存储在一个 int 数组中。

我想按第 2 列排序,如果找到相等的数字,则按第 3 列排序,最后,如果找到相等的数字,则按第 3 列排序。

输出应该是这样的:

11  1   13  57  
3 1 56 46
4 2 5 40
6 2 16 25
19 2 25 12
13 2 28 36
16 3 17 13
7 3 28 51
5 3 34 15
15 3 51 30
17 3 56 40
18 4 38 57
2 4 41 55
14 4 53 2
1 4 56 17
20 5 13 8
8 5 14 58
12 5 39 59
10 5 41 33
9 5 48 12

有没有简单的方法可以做到这一点?请记住,我是 Java 新手。

问候,

法沃拉斯

最佳答案

简单使用 Comparator 并使用 Arrays.sort(arr, comparator);

关于Java基于三列对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8078200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com