September 1
Una delle caratteristiche potenti del linguaggio di programmazione Java è la sua implementazione di molte strutture di dati potenti e comuni (oltre l'array ordinario), come parte del suo pacchetto integrato di classi. Una di queste strutture di dati è la collezione di classi che derivano dalla interfaccia List. A differenza dei normali array, liste possono essere efficacemente e facilmente ridimensionati per ospitare gruppi di dati che cambiano regolarmente dimensioni. Tuttavia, non è priva di inconvenienti: uno è che, una volta che un elenco è costruito, può essere difficile per modificare gli elementi; semplicemente recuperando gli elementi dalla lista e cambiarli è inefficace. Il recupero di elementi crea una nuova istanza della voce, in modo originale nella lista non riflette i cambiamenti.
1 Aprite il vostro editor di testo preferito. Qualsiasi farà, dal Blocco note di Windows per l'ambiente di sviluppo Java Netbeans. Incollare il codice seguente scheletro per iniziare:
import java.util.List;
import java.util.ArrayList;
public class SimpleListTutorial {
public static void main(String[] args) {
}
}
Tutto il codice per questo tutorial andrà entro le "principali" parentesi.
2 Creare una lista di stringhe utilizzando il seguente codice:
List <string> l = new ArrayList <String> ();
l.add ( "Prima voce");
l.add ( "Seconda voce");
l.add ( "Quarto voce");
3 Aggiungere un elemento al centro della lista con il seguente codice:
l.add (2, "Terzo elemento");
Questo aggiunge la stringa "Terzo elemento" al terzo posto nella lista. Ricordate, gli indici della lista, come tutti i conteggi in Java, inizia a 0, invece di 1.
4 Modificare un elemento in un elenco in qualcos'altro. Utilizzare il metodo "set":
l.set (2, "Un nuovo terzo elemento");
Questo sarà completamente sostituire la voce nella terza slot con il nuovo elemento dato. È lo stesso codice seguente:
l.remove (2);
l.add (2, "Un nuovo terzo elemento.");
5 Stampa l'elenco corrente per assicurarsi che ha funzionato:
for (String s: l) {
System.out.println(s);
}