logo

Elenco Java

Elenco in Java fornisce la possibilità di mantenere il file raccolta ordinata . Contiene i metodi basati sull'indice per inserire, aggiornare, eliminare e cercare gli elementi. Può avere anche elementi duplicati. Possiamo anche memorizzare gli elementi nulli nell'elenco.

L'interfaccia Elenco si trova nel filejava.utilpacchetto ed eredita l'interfaccia Collection. È una factory dell'interfaccia ListIterator. Attraverso ListIterator, possiamo scorrere l'elenco in avanti e all'indietro. Le classi di implementazione dell'interfaccia List sonoLista di array,Lista collegata, Pila e Vettore. ArrayList e LinkedList sono ampiamente utilizzati nella programmazione Java. La classe Vector è deprecata a partire da Java 5.

Dichiarazione dell'interfaccia elenco

 public interface List extends Collection 

Metodi di elenco Java

Metodo Descrizione
void add(int indice, elemento E) Viene utilizzato per inserire l'elemento specificato nella posizione specificata in un elenco.
somma booleana(E e) Viene utilizzato per aggiungere l'elemento specificato alla fine di un elenco.
booleano addAll(Collezione c) Viene utilizzato per aggiungere tutti gli elementi della raccolta specificata alla fine di un elenco.
booleano addAll(int indice, Collezione c) Viene utilizzato per aggiungere tutti gli elementi nella raccolta specificata, a partire dalla posizione specificata dell'elenco.
vuoto chiaro() Viene utilizzato per rimuovere tutti gli elementi da questo elenco.
booleano uguale(Oggetto o) Viene utilizzato per confrontare l'oggetto specificato con gli elementi di una lista.
int codice hash() Viene utilizzato per restituire il valore del codice hash per un elenco.
E get(indice int) Viene utilizzato per recuperare l'elemento dalla particolare posizione dell'elenco.
booleano è vuoto() Restituisce vero se la lista è vuota, altrimenti falso.
int ultimoIndiceOf(Oggetto o) Viene utilizzato per restituire l'indice in questo elenco dell'ultima occorrenza dell'elemento specificato, o -1 se l'elenco non contiene questo elemento.
Oggetto[] aArray() Viene utilizzato per restituire un array contenente tutti gli elementi di questo elenco nell'ordine corretto.
T[] toArray(T[] a) Viene utilizzato per restituire un array contenente tutti gli elementi di questo elenco nell'ordine corretto.
booleano contiene(Oggetto o) Restituisce vero se l'elenco contiene l'elemento specificato
booleano contieneTutto(Collezione c) Restituisce vero se la lista contiene tutto l'elemento specificato
int indiceOf(Oggetto o) Viene utilizzato per restituire l'indice in questa lista della prima occorrenza dell'elemento specificato, o -1 se la Lista non contiene questo elemento.
E rimuovi(indice int) Viene utilizzato per rimuovere l'elemento presente nella posizione specificata nella lista.
booleano rimuovi(Oggetto o) Viene utilizzato per rimuovere la prima occorrenza dell'elemento specificato.
booleano rimuoviTutto(Collezione c) Viene utilizzato per rimuovere tutti gli elementi dall'elenco.
void replaceAll(operatore UnaryOperator) Viene utilizzato per sostituire tutti gli elementi dell'elenco con l'elemento specificato.
void keepAll(Collezione c) Viene utilizzato per conservare tutti gli elementi dell'elenco presenti nella raccolta specificata.
E set(indice int, elemento E) Viene utilizzato per sostituire l'elemento specificato nella lista, presente nella posizione specificata.
void sort(Comparatore c) Viene utilizzato per ordinare gli elementi della lista in base al comparatore specificato.
divisore divisore() Viene utilizzato per creare uno spliterator sugli elementi in un elenco.
SottoLista elenco(int fromIndex, int toIndex) Viene utilizzato per recuperare tutti gli elementi che si trovano all'interno dell'intervallo specificato.
dimensione intera() Viene utilizzato per restituire il numero di elementi presenti nella lista.

Elenco Java vs ArrayList

List è un'interfaccia mentre ArrayList è la classe di implementazione di List.

Come creare una lista

Le classi ArrayList e LinkedList forniscono l'implementazione dell'interfaccia List. Vediamo gli esempi per creare la Lista:

 //Creating a List of type String using ArrayList List list=new ArrayList(); //Creating a List of type Integer using ArrayList List list=new ArrayList(); //Creating a List of type Book using ArrayList List list=new ArrayList(); //Creating a List of type String using LinkedList List list=new LinkedList(); 

In breve, puoi creare Liste di qualsiasi tipo. Le classi ArrayList e LinkedList vengono utilizzate per specificare il tipo. Qui, T indica il tipo.

Esempio di elenco Java

Vediamo un semplice esempio di List in cui utilizziamo la classe ArrayList come implementazione.

 import java.util.*; public class ListExample1{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } } 
Provalo adesso

Produzione:

 Mango Apple Banana Grapes 

Come convertire un array in un elenco

Possiamo convertire l'array in elenco attraversando l'array e aggiungendo l'elemento nell'elenco uno per uno utilizzando il metodo list.add(). Vediamo un semplice esempio per convertire gli elementi di un array in List.

 import java.util.*; public class ArrayToListExample{ public static void main(String args[]){ //Creating Array String[] array={'Java','Python','PHP','C++'}; System.out.println('Printing Array: '+Arrays.toString(array)); //Converting Array to List List list=new ArrayList(); for(String lang:array){ list.add(lang); } System.out.println('Printing List: '+list); } } 
Provalo adesso

Produzione:

 Printing Array: [Java, Python, PHP, C++] Printing List: [Java, Python, PHP, C++] 

Come convertire la lista in un array

Possiamo convertire List in Array chiamando il metodo list.toArray(). Vediamo un semplice esempio per convertire gli elementi della lista in array.

altera aggiungi colonna Oracle
 import java.util.*; public class ListToArrayExample{ public static void main(String args[]){ List fruitList = new ArrayList(); fruitList.add('Mango'); fruitList.add('Banana'); fruitList.add('Apple'); fruitList.add('Strawberry'); //Converting ArrayList to Array String[] array = fruitList.toArray(new String[fruitList.size()]); System.out.println('Printing Array: '+Arrays.toString(array)); System.out.println('Printing List: '+fruitList); } } 
Provalo adesso

Produzione:

 Printing Array: [Mango, Banana, Apple, Strawberry] Printing List: [Mango, Banana, Apple, Strawberry] 

Ottieni e imposta l'elemento nell'elenco

IL metodo get() restituisce l'elemento in corrispondenza dell'indice specificato, mentre il metodo set() modifica o sostituisce l'elemento.

 import java.util.*; public class ListExample2{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //accessing the element System.out.println('Returning element: '+list.get(1));//it will return the 2nd element, because index starts from 0 //changing the element list.set(1,'Dates'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } } 
Provalo adesso

Produzione:

 Returning element: Apple Mango Dates Banana Grapes 

Come ordinare l'elenco

Esistono vari modi per ordinare l'elenco, qui utilizzeremo il metodo Collections.sort() per ordinare l'elemento dell'elenco. IL java.util Il pacchetto fornisce una classe di utilità Collezioni che ha il metodo statico sort(). Usando il Collezioni.sort() metodo, possiamo facilmente ordinare qualsiasi elenco.

 import java.util.*; class SortArrayList{ public static void main(String args[]){ //Creating a list of fruits List list1=new ArrayList(); list1.add('Mango'); list1.add('Apple'); list1.add('Banana'); list1.add('Grapes'); //Sorting the list Collections.sort(list1); //Traversing list through the for-each loop for(String fruit:list1) System.out.println(fruit); System.out.println('Sorting numbers...'); //Creating a list of numbers List list2=new ArrayList(); list2.add(21); list2.add(11); list2.add(51); list2.add(1); //Sorting the list Collections.sort(list2); //Traversing list through the for-each loop for(Integer number:list2) System.out.println(number); } } 

Produzione:

 Apple Banana Grapes Mango Sorting numbers... 1 11 21 51 

Interfaccia Java ListIterator

L'interfaccia ListIterator viene utilizzata per attraversare l'elemento in avanti e indietro.

tipo Java di variabile

Dichiarazione dell'interfaccia ListIterator

 public interface ListIterator extends Iterator 

Metodi dell'interfaccia Java ListIterator:

Metodo Descrizione
vuoto aggiungi(E e) Questo metodo inserisce l'elemento specificato nell'elenco.
booleano hasNext() Questo metodo restituisce true se l'iteratore dell'elenco ha più elementi mentre attraversa l'elenco in avanti.
E successivo() Questo metodo restituisce l'elemento successivo nell'elenco e fa avanzare la posizione del cursore.
int nextIndice() Questo metodo restituisce l'indice dell'elemento che verrebbe restituito da una successiva chiamata a next()
booleano hasPrevious() Questo metodo restituisce true se l'iteratore dell'elenco ha più elementi mentre attraversa l'elenco nella direzione opposta.
E precedente() Questo metodo restituisce l'elemento precedente nell'elenco e sposta indietro la posizione del cursore.
E Indice precedente() Questo metodo restituisce l'indice dell'elemento che verrebbe restituito da una successiva chiamata a previous().
vuoto rimuovi() Questo metodo rimuove l'ultimo elemento dall'elenco restituito dai metodi next() o previous()
insieme vuoto(E e) Questo metodo sostituisce l'ultimo elemento restituito dai metodi next() o previous() con l'elemento specificato.

Esempio di interfaccia ListIterator

 import java.util.*; public class ListIteratorExample1{ public static void main(String args[]){ List al=new ArrayList(); al.add('Amit'); al.add('Vijay'); al.add('Kumar'); al.add(1,'Sachin'); ListIterator itr=al.listIterator(); System.out.println('Traversing elements in forward direction'); while(itr.hasNext()){ System.out.println('index:'+itr.nextIndex()+' value:'+itr.next()); } System.out.println('Traversing elements in backward direction'); while(itr.hasPrevious()){ System.out.println('index:'+itr.previousIndex()+' value:'+itr.previous()); } } } 

Produzione:

 Traversing elements in forward direction index:0 value:Amit index:1 value:Sachin index:2 value:Vijay index:3 value:Kumar Traversing elements in backward direction index:3 value:Kumar index:2 value:Vijay index:1 value:Sachin index:0 value:Amit 

Esempio di elenco: Libro

Vediamo un esempio di List in cui stiamo aggiungendo i Libri.

 import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class ListExample5 { public static void main(String[] args) { //Creating list of Books List list=new ArrayList(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications and Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to list list.add(b1); list.add(b2); list.add(b3); //Traversing list for(Book b:list){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } } 
Provalo adesso

Produzione:

 101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications and Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6 

Argomenti correlati

ArrayList in Java

Lista collegata in Java

Differenza tra ArrayList e LinkedList

Differenza tra Array e ArrayList

Quando utilizzare ArrayList e LinkedList in Java

Differenza tra ArrayList e Vector

Come confrontare due ArrayList in Java

Come invertire ArrayList in Java

Quando utilizzare ArrayList e LinkedList in Java

Come rendere ArrayList di sola lettura

dimensione del testo in lattice

Differenza tra la lunghezza dell'array e la dimensione() di ArrayList in Java

Come sincronizzare ArrayList in Java

Come convertire ArrayList in Array e Array in ArrayList in Java

Array vs ArrayList in Java

Come ordinare Java ArrayList in ordine decrescente

Come rimuovere i duplicati da ArrayList in Java