ArrayList in Java
Un ArrayList in Java è un file ridimensionabile (o dinamico) array da pacchetto java.util che può crescere o ridursi automaticamente man mano che gli elementi vengono aggiunti o rimossi a differenza degli array regolari con una dimensione fissa.
- Accesso indicizzato: È possibile accedere agli elementi utilizzando il loro indice proprio come gli array.
- Consente duplicati: Sono consentiti elementi duplicati.
- Mantiene l'ordine di inserzione: Gli elementi vengono memorizzati nell'ordine in cui sono inseriti.
- Non sincronizzato: Per impostazione predefinita, ArrayList non è thread-safe (è necessaria la sincronizzazione manuale per l'accesso simultaneo).
import java.util.ArrayList ; class Main { public static void main ( String [] args ) { // Creating an ArrayList ArrayList < Integer > a = new ArrayList < Integer > (); // Adding Element in ArrayList a . add ( 1 ); a . add ( 2 ); a . add ( 3 ); // Printing ArrayList System . out . println ( a ); } }
Produzione
[1 2 3]
Gerarchia di ArrayList
Implementa Elenco interfaccia che è una sottointerfaccia di Interfaccia di raccolta .
Costruttori ArrayList in Java
Java fornisce più costruttori per creare un ArrayList in base a diversi requisiti:
1.ArrayList()
Crea un ArrayList vuoto con capacità iniziale predefinita.
ArrayList
arr = nuovo ArrayList <>();
2. ElencoArray arr = nuovo ArrayList <>()
Crea un ArrayList inizializzato con gli elementi della raccolta specificata.
ArrayList
arr = nuovo ArrayList <>(collezione);
3. ArrayList(int capacitàiniziale)
Questo costruttore viene utilizzato per creare un elenco di array con la capacità iniziale specificata.
ArrayList
arr = nuovo ArrayList <>(20);
Operazioni di ArrayList
Ora utilizzando i costruttori abbiamo ArrayList per ulteriori operazioni come InsertionDeletion e Updation degli elementi in ArrayList.
Java import java.util.* ; class GFG { public static void main ( String args [] ){ // Creating an Array of string type ArrayList < String > al = new ArrayList <> (); // 1. Adding elements to ArrayList at the end al . add ( 'Geeks' ); al . add ( 'Geeks' ); System . out . println ( 'Original List : ' + al ); // Adding Elements at the specific index al . add ( 1 'For' ); System . out . println ( 'After Adding element at index 1 : ' + al ); // 2. Removing Element using index al . remove ( 0 ); System . out . println ( 'Element removed from index 0 : ' + al ); // Removing Element using the value al . remove ( 'Geeks' ); System . out . println ( 'Element Geeks removed : ' + al ); // 3. Updating value at index 0 al . set ( 0 'GFG' ); System . out . println ( 'List after updation of value : ' + al ); } }
Produzione
Original List : [Geeks Geeks] After Adding element at index 1 : [Geeks For Geeks] Element removed from index 0 : [For Geeks] Element Geeks removed : [For] List after updation of value : [GFG]
Complessità di Java ArrayList
| Operazione | Complessità temporale | Complessità spaziale |
|---|---|---|
| Inserimento di elementi in ArrayList | O(1) | SU) |
| Rimozione di un elemento da ArrayList | SU) | O(1) |
| Attraversamento degli elementi in ArrayList | SU) | SU) |
| Sostituzione di elementi in ArrayList | O(1) | O(1) |
Metodi Java ArrayList
| Metodo | Descrizione |
|---|---|
| add(int indice elemento oggetto) | Questo metodo viene utilizzato per inserire un elemento specifico in un indice di posizione specifico in un elenco. |
| aggiungi(Oggetto o) | Questo metodo viene utilizzato per aggiungere un elemento specifico alla fine di un elenco. |
| aggiungiTutto(Raccolta C) | Questo metodo viene utilizzato per aggiungere tutti gli elementi di una raccolta specifica alla fine dell'elenco menzionato in un ordine tale che i valori vengano restituiti dall'iteratore della raccolta specificata. |
| addAll(int indice Raccolta C) | Utilizzato per inserire tutti gli elementi a partire dalla posizione specificata da una raccolta specifica nell'elenco menzionato. |
| chiaro() | Questo metodo viene utilizzato per rimuovere tutti gli elementi da qualsiasi elenco. |
| clone() | Questo metodo viene utilizzato per restituire una copia superficiale di un ArrayList in Java. |
| contiene(Oggetto o) | Restituisce vero se questo elenco contiene l'elemento specificato. |
| GuaranteeCapacità(int MinCapacità) | Aumenta la capacità di questa istanza ArrayList, se necessario, per garantire che possa contenere almeno il numero di elementi specificati dall'argomento capacità minima. |
| perEach(Consumatore super E>azione) | Esegue l'azione specificata per ciascun elemento dell'Iterable fino a quando tutti gli elementi non sono stati elaborati o l'azione genera un'eccezione. |
| get(indice int) | Restituisce l'elemento nella posizione specificata in questo elenco. |
| indiceDi(Oggetto O) | Viene restituito l'indice della prima occorrenza di un elemento specifico oppure -1 nel caso in cui l'elemento non sia nell'elenco. |
| èVuoto() | Restituisce vero se questa lista non contiene elementi. |
| ultimoIndiceOf(Oggetto O) | Viene restituito l'indice dell'ultima occorrenza di un elemento specifico oppure -1 nel caso in cui l'elemento non sia nell'elenco. |
| elencoIteratore() | Restituisce un iteratore di elenco sugli elementi in questo elenco (nella sequenza corretta). |
| listIterator(int indice) | Restituisce un iteratore di elenco sugli elementi di questo elenco (nella sequenza corretta) a partire dalla posizione specificata nell'elenco. |
| rimuovi(indice int) | Rimuove l'elemento nella posizione specificata in questo elenco. |
| rimuovi(Oggetto o) | Rimuove la prima occorrenza dell'elemento specificato dall'elenco, se presente. |
| rimuoviTutto(Raccolta c) | Rimuove da questo elenco tutti gli elementi contenuti nella raccolta specificata. |
| rimuoviSe(filtro predicato) | Rimuove tutti gli elementi di questa raccolta che soddisfano il predicato specificato. |
| rimuoviIntervallo(int fromIndex int toIndex) | Rimuove da questo elenco tutti gli elementi il cui indice è compreso tra Indice compreso e Indice esclusivo. |
| keepAll(Raccolta >C) | Mantiene solo gli elementi di questo elenco contenuti nella raccolta specificata. |
| set(int indice E elemento) | Sostituisce l'elemento nella posizione specificata in questo elenco con l'elemento specificato. |
| misurare() | Restituisce il numero di elementi in questo elenco. |
| divisore() | Crea uno Spliterator con associazione tardiva e fail-fast sugli elementi in questo elenco. |
| sottoLista(int daIndice int aIndice) | Restituisce una visualizzazione della parte di questo elenco compresa tra fromIndex inclusive e toIndex Exclusive specificati. |
| toArray() | Questo metodo viene utilizzato per restituire un array contenente tutti gli elementi dell'elenco nell'ordine corretto. |
| toArray(Oggetto[] O) | Viene utilizzato anche per restituire un array contenente tutti gli elementi di questo elenco nell'ordine corretto come nel metodo precedente. |
| tagliare alla dimensione() | Questo metodo viene utilizzato per ridurre la capacità dell'istanza di ArrayList alla dimensione corrente dell'elenco. |