Array in Java: cosa devi sapere?

Pubblicato: 2020-11-30

Sommario

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.

Prepararsi per una carriera del futuro

APPRENDIMENTO AFFIDABILE DEL SETTORE - CERTIFICAZIONE RICONOSCIUTA DEL SETTORE.
Per saperne di più