Résolu Trier un Array bi-dimensionel
-
Bonjour, ma question n’est pas trop minecraft mais plutôt java mais soit. Voila j’ai une liste:
double[][] positions = new double[][]{ { 173, 68, -1731, 2, 0 }, { -329, 67, -1847, 1, 0 }, { -616, 60, -1878, 3, 0 }, … };
Et je voudrais que cette liste soit ordonner selon la 4 ème colonne:
double[][] positions = new double[][]{ { -329, 67, -1847, 1, 0 }, { 173, 68, -1731, 2, 0 }, { -616, 60, -1878, 3, 0 }, … };
Merci d’avance
-
Selon la 4ème colonne ? Alors que ton tableau n’en a que 2 ?
-
Ba non, il y a 5 colonnes…
Par exemple **Ligne **2, **Colonne **5(positions[2][5]), il y a la valeur 0 -
Ah, tu le vois dans ce sens toi.
Malheureusement il n’existe qu’un seul moyen de trier des array, c’est avec Collections.sort et il demande une liste ou une map il me semble.
EDIT : tu peux aussi utiliser une TreeMap.
-
Si tu passes par des tableaux, tu passes a coté des avantages que peut t’offrir la programmation orientée objet.
Une TreeMap peut être adapté SEULEMENT SI les éléments de la 4ème colonne sont uniques. -
Merci, mais j’ai trouver comment trier ma liste, pour ceux que ca interesse:
java.util.Arrays.sort(positions, new java.util.Comparator<double[]>() { public int compare(double[] j, double[] k) { return Double.compare(j[4], k[4]); } }); ```</double[]>