Wie ein Array ähnlich ein ORDER BY-Klausel in SQL zu manipulieren?
-
21-09-2019 - |
Frage
Meine Daten wurden in ein Array platziert, aber leider nicht in der Reihenfolge, ich möchte es in ...
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" }
};
Wie manipuliere ich dieses Array so, dass wenn ich Schleife durch sie die Reihenfolge ist durch die Menge, ähnlich wie SELECT * FROM "databaseToArray" ORDER BY "Amount"
aka
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" }
};
Lösung
Sie erhalten eine Vergleicher zu den Arrays übergeben möchten .Sort Methode. Ich habe nicht Java in 5 Jahren getan, aber es sollte leicht machbar sein. Vielleicht dieses Beispiel aufzuräumen jemand kann ich darüber schreiben bin, da ich ziemlich sicher bin, werde ich etwas falsch.
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]);
}
});
Andere Tipps
fand ich die Sortiermethode für die Verarbeitung Website, aber das ist nur für eindimensionalen Arrays ...
http://processing.org/reference/sort_.html
float[] a = { 3, 5, 2, 4, 1 };
a = sort(a);
println(a);
// Prints 1, 2, 3, 4, 5