在Java中,我的数组中有一个数据,如下所示
2019.07.25 20:24 Message A
2019.07.25 20:17 Message G
2019.07.25 20:25 Message B
2019.07.25 20:30 Message D
2019.07.25 20:01 Message F
2019.07.25 21:08 Message E
2019.07.25 19:54 Message R
我想根据第一列对其进行排序,所以我的最终数据可以像这样
2019.07.25 19:54 Message R
2019.07.25 20:01 Message F
2019.07.25 20:17 Message G
2019.07.25 20:24 Message A
2019.07.25 20:25 Message B
2019.07.25 20:30 Message D
2019.07.25 21:08 Message E
第一列是格式为“ yyyy.MM.dd HH:mm”的日期,第二列是字符串。
根据一列
对二维数组进行排序第一列是日期格式为“ yyyy.MM.dd HH:mm”的日期,第二列是字符串。
因为您说的是二维数组,所以我假设“格式日期…”表示字符串。这是用于对String [] []的二维数组进行排序的代码:
import java.util.Arrays;
import java.util.Comparator;
public class Asdf {
public static void main(final String[] args) {
final String[][] data = new String[][] {
new String[] { "2019.07.25 20:24", "Message A" },
new String[] { "2019.07.25 20:17", "Message G" },
new String[] { "2019.07.25 20:25", "Message B" },
new String[] { "2019.07.25 20:30", "Message D" },
new String[] { "2019.07.25 20:01", "Message F" },
new String[] { "2019.07.25 21:08", "Message E" },
new String[] { "2019.07.25 19:54", "Message R" } };
Arrays.sort(data, new Comparator<String[]>() {
@Override
public int compare(final String[] entry1, final String[] entry2) {
final String time1 = entry1[0];
final String time2 = entry2[0];
return time1.compareTo(time2);
}
});
for (final String[] s : data) {
System.out.println(s[0] + " " + s[1]);
}
}
}
输出:
2019.07.25 19:54 Message R
2019.07.25 20:01 Message F
2019.07.25 20:17 Message G
2019.07.25 20:24 Message A
2019.07.25 20:25 Message B
2019.07.25 20:30 Message D
2019.07.25 21:08 Message E
问题内容: 我将向您展示有关该问题的目的的示例。我之前拥有的数组以及排序后如何使用它: 之前: 之后: 我们在int矩阵中工作: 排序基于第二列Weight.Am,以查找对数据数组进行排序的过程。 我尝试了这个,但不幸的是我没有找到正确的泡菜排序方法。请问有帮助吗? 问题答案: 使用带有自定义。 作为shmosel 下文提到的,与Java 8中,您可以使用:
问题内容: 我已经实现了冒泡排序来对二维java long [] []进行排序,但是我的天哪太慢了,我将需要禁食算法,因为我将生成最大堆大小的数组,jvm将允许我, 所以我认为最好和最快的方法是使用内置的java Arrays.sort 我不介意它是否只能在第一列上排序,因为我可以更改程序以适合它,但我碰到了这一点,但对陌生人并不熟悉, 这将使我能够对整数的维数组进行排序,有人知道如何将其更改为允
编写一个程序,提示用户输入一个双值nxn矩阵,并显示一个新的矩阵,其中对初始矩阵的列进行了排序。您可以使用任何排序算法来解决问题;请在代码头中指定所用排序算法的名称。您的程序必须实现排序算法;不能使用Array类中提供的排序方法。排序应该实现到一个方法中,其中返回一个新数组,而原始数组保持不变: 该程序还应该实现一个方法,打印初始和结果矩阵给用户。打印出来的应该是很好的格式。下面是一个运行示例:
按列对数组进行排序,就像我想在这里对最后一行上的值进行排序一样,根据排序结果,同一行中其他列上的数字也可能会发生变化 例如