La description de l'API Java de la classe des tableaux est: cette classe contient diverses méthodes utilisées pour manipuler les tableaux (tels que le tri et la recherche).
1. Trier les tableaux de types de données de base
illustrer:
(1) Sort () dans la classe des tableaux utilise "la méthode de tri rapide réglée";
(2) Par exemple, les tableaux de types de données de base tels que int [], double [], char [], etc., la classe de tableaux fournit uniquement la disposition des commandes ascendante par défaut et ne fournit pas la méthode de disposition des commandes décroissante correspondante.
(3) Pour trier les tableaux de types de base dans l'ordre descendant, vous devez convertir ces tableaux en tableaux de classe encapsulés correspondants, tels que entier [], double [], caractère [], etc., pour trier ces tableaux de classe. (En fait, il est préférable de trier l'ordre ascendant d'abord et de le transformer en l'ordre vous-même).
Trier les tableaux dans l'ordre croissant par défaut
Fonction Prototype: STATIQUE VOID SORT (INT [] A) Trier le tableau de type int spécifié dans l'ordre croissant.
STATIC VOID SORT (int [] A, int FromIndex, int toindex) Trier la plage spécifiée d'un tableau de type int dans les nombres ascendants.
Exemple de code:
La copie de code est la suivante:
import java.util.arrays;
classe publique Arraysort_11 {
public static void main (String args [])
{
int [] a = {1,4, -1,5,0};
Arrays.sort (a);
// Le contenu du tableau a [] devient {-1,0,1,4,5}
pour (int i = 0; i <a.length; i ++)
System.out.print (a [i] + "");
}
}
2. Trier les données des types de données composites
Prototype de fonction:
(1) Sortie publique statique <T> VOID (T [] A, Comparateur C) Triez le tableau d'objets spécifié en fonction de l'ordre généré par le comparateur spécifié.
(2) Public Static <T> Void Sort (T [] A, int FromIndex, int toindex, Comparateur C) Trier la plage spécifiée du tableau d'objets spécifié en fonction de l'ordre généré par le comparateur spécifié.
Remarque: Ces deux algorithmes de tri sont l'algorithme "Tured Merge Tri".
Exemple de code:
La copie de code est la suivante:
package aa;
import java.util.arrays;
Importer java.util.comparator;
classe publique Arraysort {
Point [] arr;
ArraySort () {
Arr = nouveau point [4];
pour (int i = 0; i <4; i ++)
arr [i] = new Point ();
}
public static void main (String [] args) {
Arraysort Sort = new ArraySort ();
SORT.Ar [0] .x = 2; Sult.arr [0] .y = 1;
tri.arr [1] .x = 2; tri.arr [1] .y = 2;
tri.arr [2] .x = 1; tri.arr [2] .y = 2;
tri.arr [3] .x = 0; tri.arr [3] .y = 1;
Arrays.sort (tri.arr, new myComprator ());
pour (int i = 0; i <4; i ++) // Résultat de tri de sortie
System.out.println ("(" + tri.arr [i] .x + "," + tri.arr [i] .y + ")");
}
}
Point de classe {
int x;
int y;
}
// Comparateur, les coordonnées x sont triées de petite à grande;
classe MyCompator implémente le comparateur {
public int compare (objet arg0, objet arg1) {
Point t1 = (point) arg0;
Point t2 = (point) arg1;
if (t1.x! = t2.x)
retourner t1.x> t2.x?
autre
retourner t1.y> t2.y?
}
}