Le collezioni Java ordinano e ordinano gli array

Le collezioni Java ordinano e ordinano gli array
ArrayList e il vettore sono ciascuno esempi di un elenco in Java. Esistono altri tipi di elenchi. Una classe di collezioni ha il metodo Ord () per ordinare un elenco in ordine crescente. Ha anche il metodo di reverseOrder (), che consente l'ordinamento in ordine decrescente (inverso). Il metodo di inversione non viene utilizzato di solito. È usato come argomento in uno dei metodi di sorto (). La lezione di collezioni è nel Java.util.* pacchetto, che deve essere importato dal programmatore da utilizzare.

Prendi in considerazione il seguente elenco non fatto di set di persone:

Bambini, ragazzi, gruppi, ragazze, zie, zii, genitori

Se questo elenco viene ordinato in un ordine ascendente del dizionario, il risultato sarebbe:

zie, ragazzi, bambini, ragazze, gruppi, genitori, zii

Se l'elenco viene ordinato in ordine decrescente, il risultato sarebbe:

zii, genitori, gruppi, ragazze, bambini, ragazzi, zie

Le sintassi completi per i metodi di smistamento delle collezioni principali sono:

statico pubblico > Ordina vuota (elenco elenco)
E
statico pubblico vuoto ordinamento (elenco Elenco, comparatore C)

La sintassi completa per il metodo di inversione è:

statico pubblico Comparatore ordine inverso()

Il metodo di reverseOrder () viene utilizzato con il secondo metodo sopra. "Statico" significa che la classe di raccolte non deve essere istanziata per utilizzare il metodo.

Anche l'array normale può essere ordinato. Gli elenchi implementati richiedono la classe di raccolte per l'ordinamento. L'array ha bisogno della classe Arrays per l'ordinamento. I metodi di smistamento della classe Array che corrispondono ai metodi di smistamento sopra sono:

Ordine del vuoto statico pubblico (oggetto [] a)
E
statico pubblico void Ord (t [] a, comparatore C)

Lo stesso metodo di reverseOrder () viene utilizzato con il secondo metodo qui per la retromarcia.

La lezione di array è anche nel java.util.* pacchetto e deve essere importato.

Ordine crescente

La prima forma dei due metodi di ordinamento sovraccarichi sopra viene utilizzata per l'ordinamento in ordine crescente.

Smorting Arraylist ascendente

Il metodo di ordinamento restituisce vuoto. Il seguente programma mostra come viene ordinata l'ArrayList, in ordine crescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
ArrayList al = new ArrayList ();
al.Aggiungi ("bambini"); al.Aggiungi ("ragazzi"); al.Aggiungi ("gruppi"); al.Aggiungi ("ragazze");
al.Aggiungi ("zie"); al.Aggiungi ("zii"); al.Aggiungi ("genitori");
Collezioni.sort (al);
per (int i = 0; iSistema.fuori.Stampa (al.ottenere (i)); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

AUNTS RAGAZZI GIURNI GIURNI GRUPPI GENITORI UNCI

Ordinamento del vettore ascendente

Il metodo di ordinamento restituisce vuoto. Il seguente programma mostra come viene ordinato il vettore, in ordine crescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
Vector v = new vector ();
v.Aggiungi ("bambini"); v.Aggiungi ("ragazzi"); v.Aggiungi ("gruppi"); v.Aggiungi ("ragazze");
v.Aggiungi ("zie"); v.Aggiungi ("zii"); v.Aggiungi ("genitori");
Collezioni.Ordina (V);
per (int i = 0; iSistema.fuori.Stampa (v.ottenere (i)); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

AUNTS RAGAZZI GIURNI GIURNI GRUPPI GENITORI UNCI

Tipo di ordinamento del tipo di array [] ascendente

Il metodo di ordinamento restituisce vuoto. Il seguente programma mostra come l'array ordinario viene ordinato in ordine crescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
String [] arr = new String [] "bambini", "ragazzi", "gruppi", "ragazze", "zie", "zii", "genitori";
Array.sort (arr);
per (int i = 0; iSistema.fuori.print (arr [i]); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

AUNTS RAGAZZI GIURNI GIURNI GRUPPI GENITORI UNCI

Ordine decrescente

Collezioni e array sono in realtà due classi diverse. Gli array hanno due metodi sovraccarichi di ordinamento (), simili ai metodi di raccolte sordo () sovraccarichi, indicati sopra. Per entrambi gli schemi di ordinamento, il metodo di reverseOrder () della classe di raccolta restituisce un oggetto comparatore, da usare come secondo argomento, per uno dei metodi di ordinamento, per l'ordine decrescente. La sintassi da usare è:

Collezioni.ordine inverso()

Sordinting Arraylist Discending

Il metodo di ordinamento sovraccarico con un secondo argomento viene utilizzato per ordinare la discesa. L'espressione “Collezioni.inverteOrder () "dovrebbe essere usato per il secondo argomento. Il seguente programma mostra come viene ordinata l'ArrayList, in ordine decrescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
ArrayList al = new ArrayList ();
al.Aggiungi ("bambini"); al.Aggiungi ("ragazzi"); al.Aggiungi ("gruppi"); al.Aggiungi ("ragazze");
al.Aggiungi ("zie"); al.Aggiungi ("zii"); al.Aggiungi ("genitori");
Collezioni.Ordina (Al, collezioni.ordine inverso());
per (int i = 0; iSistema.fuori.Stampa (al.ottenere (i)); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

zii gruppi di genitori gruppi ragazze, bambini, zie dei ragazzi

Ordinamento del vettore che scende

Il metodo di ordinamento sovraccarico con un secondo argomento viene utilizzato per ordinare la discesa. L'espressione “Collezioni.inverteOrder () "dovrebbe essere usato per il secondo argomento. Il seguente programma mostra come viene ordinato il vettore, in ordine decrescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
Vector v = new vector ();
v.Aggiungi ("bambini"); v.Aggiungi ("ragazzi"); v.Aggiungi ("gruppi"); v.Aggiungi ("ragazze");
v.Aggiungi ("zie"); v.Aggiungi ("zii"); v.Aggiungi ("genitori");
Collezioni.Ordina (V, collezioni.ordine inverso());
per (int i = 0; iSistema.fuori.Stampa (v.ottenere (i)); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

zii gruppi di genitori gruppi ragazze, bambini, zie dei ragazzi

Tipo di ordinamento del tipo di array [] discreto

Il metodo di ordinamento sovraccarico per gli array, con un secondo argomento, viene usato per ordinare la discesa. L'espressione “Collezioni.inverteOrder () "dovrebbe essere usato per il secondo argomento. Il seguente programma mostra come viene ordinato l'array ordinario, in ordine decrescente:

Importa Java.util.*;
Classe pubblica TheClass
public static void main (string [] args)
String [] arr = new String [] "bambini", "ragazzi", "gruppi", "ragazze", "zie", "zii", "genitori";
Array.Ordina (arr, collezioni.ordine inverso());
per (int i = 0; iSistema.fuori.print (arr [i]); Sistema.fuori.stampa(");

Sistema.fuori.println ();

L'output è:

zii gruppi di genitori gruppi ragazze, bambini, zie dei ragazzi

Conclusione

ArrayList e il vettore sono ciascuno esempi di un elenco in Java. Esistono altri tipi di elenchi. Una classe di collezioni ha il metodo Ord () per ordinare un elenco in ordine crescente. Ha anche il metodo di reverseOrder (), che consente l'ordinamento in ordine decrescente (inverso). Il metodo di inversione non viene utilizzato in modo ordinario. È usato come argomento in uno dei metodi di sorto (). La lezione di collezioni è nel Java.util.* pacchetto, che deve essere importato dal programmatore da utilizzare.

La classe Arrays ha molti metodi di ordinamento sovraccarico. Due di loro sono:

Ordine del vuoto statico pubblico (oggetto [] a)
statico pubblico void Ord (t [] a, comparatore C)

La classe di raccolte ha di conseguenza due metodi di ordinamento sovraccarichi, che sono:

statico pubblico > Ordina vuota (elenco elenco)
statico pubblico vuoto ordinamento (elenco Elenco, comparatore C)

Il primo metodo della classe Arrays ordina un array di oggetti, ascendente. Il primo metodo della classe di raccolte ordina un elenco di oggetti, ascendente. Per ordinare la discesa, entrambi i secondi metodi qui sono configurati allo stesso modo, per i loro secondi argomenti, io.e. Collezioni.ordine inverso().

Gli esempi di elenco predefiniti di Java sono ArrayList, Attributelist, LinkedList, Stack e Vector. ARRAYS ORSCE ARRAYS, mentre le raccolte ordinano elenchi.