Array in Java: cosa devi sapere?
Pubblicato: 2020-11-30Sommario
introduzione
Dopo aver esaminato i tipi di dati primitivi di Java, molti di noi avranno una domanda: possiamo memorizzare più di una voce in sequenza nel disco?. Gli array in Java sarebbero la risposta alla nostra domanda.
Un array è una struttura di dati che memorizza le voci dello stesso tipo di dati in sequenza. Un array riduce la duplicazione del codice e lo rende semplice. Quando vogliamo memorizzare un numero considerevolmente grande di valori, diciamo 50 valori, l'assegnazione di ciascun valore a una variabile contraddice la semplicità di un codice.
Un array risolve questo problema, possiamo assegnare tutti questi valori a un singolo array, ma ricorda che un array può memorizzare solo valori dello stesso tipo di dati.
Iniziamo!
Dichiarazione e inizializzazione
Per utilizzare un array dobbiamo dichiararlo e dobbiamo specificare il tipo di dati delle variabili che vogliamo memorizzare nell'array. Simile a tutti i linguaggi di programmazione java ha anche una sintassi da seguire per la dichiarazione.
int [] matrice; //tipo 1 matrice int []; //tipo2 |
Possiamo dichiarare un array in entrambi i modi, come mostrato nel frammento di codice sopra. "Type2" è un modo tradizionale per dichiarare un array preso in prestito da c/c++. Una volta che abbiamo finito di dichiarare un array, dobbiamo creare un nuovo array e questo può essere ottenuto usando la nuova parola chiave.

E la sintassi per creare un array è la seguente: "data_type[] array = new array[array_length]". È necessario assegnare la lunghezza dell'array al momento della creazione e la dimensione non può essere aumentata dopo la creazione.
Dopo aver creato un array specificando la lunghezza, assegna semplicemente un array vuoto a quella variabile e possiamo inserire i valori in esso in un secondo momento. Esaminiamo il codice per questo.
int [] array = nuovo int [ 10 ]; //dichiarazione e //creazione di un nuovo array //assegnazione di valori matrice [ 0 ] = 1 ; matrice [ 1 ] = 5 ; matrice [ 8 ] = 9 ; //metodo 2 int [] matrice = { 1 , 2 , 3 , 4 , 5 }; Sistema . fuori . print( int [ 0 ]); |
Inizialmente, tutte le posizioni sono riempite con zeri in una matrice intera e possiamo sovrascrivere quei valori con i nostri valori menzionando l'indice tra parentesi quadre. Nello snippet sopra, "metodo 2" è un altro modo per creare un array.
Ciclo sull'array
Possiamo usare un ciclo for o un ciclo while per eseguire il ciclo su un array, dove incrementiamo l'indice per ogni iterazione. Ricorda che l'accesso a un elemento con un indice maggiore della lunghezza dell'array genererà un'eccezione.
int [] matrice = { 1 , 2 , 3 , 4 , 5 }; for ( int i = 0 ;i < 5 ;i ++ ){ Sistema . fuori . print(array[i] + “ “ ); } |
Il frammento di codice sopra stampa "1 2 3 4 5" come output.
C'è anche un altro ciclo interessante chiamato "per-ogni ciclo" per l'iterazione sul ciclo.
float [] array = { 1.2f , 2.3f , 3.4f , 4.5f , 5.6f }; for ( float f : array){ Sistema . fuori . print(f + “ “ ); } |
Il frammento di codice sopra mostra l'implementazione del ciclo for-each, in cui la variabile float cambia il valore alla voce successiva nell'array ad ogni iterazione. Questa implementazione non richiede alcuna variabile di indice.
Checkout: un elenco completo di array in Java: cosa devi sapere
Metodi predefiniti
La classe Arrays in Java viene fornita con molti metodi predefiniti che sono generalizzati a tutti i tipi di dati primitivi. Ad esempio, se voglio ordinare un array con tutti i numeri interi e un array con tutti i float, posso usare lo stesso metodo per entrambi i casi.
Esaminiamo alcuni dei metodi di array predefiniti.
- ordinare()
Questo metodo ordina l'array specificato in ordine crescente e aggiorna l'array ordinato, come già discusso, questo metodo è sovraccaricato per tutti i tipi di dati primitivi in java. Questo metodo pubblico non restituisce nulla poiché è del tipo restituito void.

Arrays.sort(array_name) è la sintassi da seguire.
float [] array = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f }; Matrici . ordina(array); for ( float f : array){ Sistema . fuori . print(f + “ “ ); } |
Lo snippet precedente stamperà "1.3 2.2 3.5 5.4 7.6" come previsto.
- riempire()
Questo metodo riempie l'array con la variabile che abbiamo passato nella chiamata di funzione. Questo metodo sostituisce un'implementazione ingenua del ciclo sull'array e dell'assegnazione di un valore a quella posizione.
Arrays.fill(nome_array, valore) è la sintassi da seguire.
float [] array = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f }; Matrici . fill(array, 9.8f ); for ( float f : array){ Sistema . fuori . print(f + “ “ ); } |
Lo snippet sopra sostituirà tutte le voci nell'array con 9.8.
- è uguale a()
Questo metodo prevede due array come parametro e restituisce true se tutti gli elementi nell'array 1 sono uguali a tutti gli elementi dell'array 2. Ricorda che questo metodo restituisce false se entrambi gli array hanno lunghezze diverse o se l'ordine degli elementi è diverso .
Array.equals(array_1, array_2) è la sintassi da seguire.
float [] array1 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f }; float [] array2 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f }; float [] array3 = { 2.2f , 1.3f , 3.5f , 5.4f , 7.6f }; Sistema . fuori . println( Matrici . equals( matrice1 ,matrice2)); //Linea 1 Sistema . fuori . println( Matrici . equals(matrice1,matrice3)); //linea 2 |
Il frammento di cui sopra stamperà True per la riga1 e False per la riga2
Per ulteriori informazioni sui vari metodi di array in Java, dai un'occhiata alla loro documentazione .
Accesso agli array nei metodi
Gli array non sarebbero utili se non possiamo usarli nelle funzioni. Ma Java non ti delude mai, possiamo passare un array, restituire un array e utilizzare un array nella funzione java.
Esaminiamoli.

È necessario specificare il tipo di dati dell'array nella dichiarazione della funzione quando si desidera passare un array alla funzione Java. Questo è quasi simile al passaggio di un tipo di dati primitivo alla funzione. Allo stesso modo, quando restituiamo un array, dobbiamo dichiarare l'array con l'array come tipo restituito.
public statico float [] ordinato( float [] array){ Matrici . ordina(array); matrice di ritorno ; } public static void main( String args[]){ float [] array1 = { 2.2f , 1.3f , 5.4f , 3.5f , 7.6f }; float [] array2 = ordinato(array1); for ( float f : array2) Sistema . fuori . print(f + “ “ ); } |
Lo snippet sopra stampa "1.3 2.2 3.5 5.4 7.6" come previsto.
Leggi: Tipi di dati MATLAB: tutto ciò che devi sapere
Conclusione
Ora che sei a conoscenza degli array in Java. Informazioni sull'inizializzazione e la dichiarazione dell'array. Esplorazione di vari modi di iterare sull'array. Sono stati esaminati alcuni dei metodi di matrice predefiniti e l'accesso agli array nei metodi. Sei pieno di energia con un'utile struttura di dati in Java, inizia a usarla ora!
Se sei interessato a saperne di più su Java, OOP e sviluppo software full-stack, dai un'occhiata al Diploma PG di upGrad e IIIT-B in Sviluppo software full-stack, progettato per i professionisti che lavorano e offre oltre 500 ore di formazione rigorosa, 9 + progetti e incarichi, stato di Alumni IIIT-B, progetti pratici pratici e assistenza sul lavoro con le migliori aziende.