我的数据已放入数组中,但不幸的是不是按照我想要的顺序...
String[][] databaseToArray = {
//{"Name", "Channel", "Description", "Amount", "isReady"},
{"John", "Nick", "likes", "2", "yes" },
{"Drew", "MTV", "dislikes", "4", "no" },
{"Fred", "CNN", "okay", "3", "no" },
{"Beth", "Fox", "valid", "1", "yes" }
};
如何操作这个数组,以便当我循环它时,顺序是按金额,类似于 SELECT * FROM "databaseToArray"ORDER BY "Amount"又名
String[][] reorganizedArray = {
//{"Name", "Channel", "Description", "Amount", "isReady"},
{"Beth", "Fox", "valid", "1", "yes" },
{"John", "Nick", "likes", "2", "yes" },
{"Fred", "CNN", "okay", "3", "no" },
{"Drew", "MTV", "dislikes", "4", "no" }
};
最佳答案
您需要传递 Comparator到 Arrays.sort 方法。我已经 5 年没有学过 Java了,但是应该很容易做到。也许有人可以清理我即将写的这个例子,因为我很确定我会出错。
String[][] databaseToArray = {
//{"Name", "Channel", "Description", "Amount", "isReady"},
{"John", "Nick", "likes", "2", "yes" },
{"Drew", "MTV", "dislikes", "4", "no" },
{"Fred", "CNN", "okay", "3", "no" },
{"Beth", "Fox", "valid", "1", "yes" }
};
Arrays.sort(databaseToArray, new Comparator<String[]>() {
public int compare(String[] a, String[] b) {
return a[3].compareTo(b[3]);
}
});
关于java - 如何像 SQL 中的 ORDER BY 子句一样操作数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2279617/