Che Cos'è un Array?
Array
Memorizzare informazioni esclusivamente nelle variabili non è sempre conveniente, poiché consumerebbe una quantità significativa di memoria stack e richiederebbe molte righe di codice.
La soluzione a questo problema sono gli array.
Analisi della sintassi di base per dichiarare un array in Java:
Main.java
1dataType[] arrayName = new dataType[capacity];
È possibile utilizzare qualsiasi tipo di dato durante la dichiarazione di un array, inclusi int, float, char e altri. È anche possibile utilizzare le proprie classi personalizzate nelle dichiarazioni di array. L'apprendimento su come creare le proprie classi e i relativi oggetti sarà trattato in un apposito corso Java Extended.
È obbligatorio specificare la dimensione dell'array tra parentesi quadre ([]). Consideriamo un esempio di creazione di un array di tipo int con dimensione 5:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Prints the size of the array System.out.println(intArray.length); } }
Come avrai notato, abbiamo utilizzato qualcosa di insolito insieme all'output della console. Questo elemento è chiamato proprietà dell'array.
Gli array possiedono proprietà proprie.
Le proprietà vengono richiamate utilizzando la notazione punto (.) sull'oggetto che le possiede. Nel nostro esempio, l'array intArray ha delle proprietà e ne stiamo utilizzando una.
La proprietà .length restituisce la dimensione (lunghezza) dell'array come valore int. Questo può essere scritto anche in modo diverso:
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Declares a new int with the value of the array's size int length = intArray.length; // Prints the size of the array System.out.println(length); } }
Ora, esaminiamo tre metodi e proprietà fondamentali per lavorare con gli array:
Arrays.sort(array): ordina gli elementi dell'array in ordine crescente;Arrays.fill(array, value): imposta tutti gli elementi dell'array al valore specificato;Arrays.toString(array): converte l'array in una rappresentazione testuale, facilitando la visualizzazione dei suoi elementi.
Main.java
1234567891011121314151617package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int[] array = {5, 2, 9, 1, 6}; // Sort the array Arrays.sort(array); System.out.println("Sorted array: " + Arrays.toString(array)); // Fill the array with the value 0 Arrays.fill(array, 0); System.out.println("Array after filling: " + Arrays.toString(array)); } }
Per prima cosa, ordina l'array in ordine crescente utilizzando Arrays.sort() e visualizza l'array ordinato tramite Arrays.toString(), che converte l'array in un formato stringa leggibile. Successivamente, tutti gli elementi dell'array vengono sostituiti con 0 utilizzando Arrays.fill(), e l'array aggiornato viene stampato nello stesso formato leggibile.
Come accedere a dati specifici in un array?
Gli array in Java sono indicizzati. Ogni elemento dell'array si trova in una propria cella ed è assegnato a un ID univoco. La numerazione degli elementi all'interno dell'array inizia da 0. Supponiamo di avere un array di numeri da zero a nove, quindi contiene 10 elementi.
Analizziamo un diagramma che illustra come gli elementi sono organizzati all'interno dell'array:
Se abbiamo un array con 10 elementi, il primo elemento sarà memorizzato all'indice 0 e l'ultimo all'indice 9, poiché l'indicizzazione parte da zero.
La pratica è sempre meglio della sola teoria, quindi esaminiamo un esempio di aggiunta e rimozione di elementi da un array utilizzando gli indici:
Main.java
12345678910111213141516package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Fills the array with numbers from 1 to 5 intArray[0] = 1; intArray[1] = 2; intArray[2] = 3; intArray[3] = 4; intArray[4] = 5; // Prints the fourth element of the array System.out.println(intArray[3]); } }
Abbiamo popolato il nostro array con elementi da uno a cinque specificando ciascun elemento tramite un indice. Tuttavia, questo approccio non è elegante e richiede molte righe di codice. Esploriamo un metodo alternativo per dichiarare un array già precompilato:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { // Declares a new pre-filled int array with a length of 5 int[] intArray = {1, 2, 3, 4, 5}; // Prints the first element of the array System.out.println(intArray[0]); } }
Abbiamo creato un array identico a quello realizzato in precedenza, ma questa volta sono state necessarie meno righe di codice e il risultato appare più elegante.
È importante notare che, utilizzando questa notazione per gli array, gli elementi devono essere racchiusi tra parentesi graffe ({}) e separati da virgole.
1. Cosa verrà stampato eseguendo questo codice?
2. Cosa verrà stampato quando eseguiamo questo codice?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Fantastico!
Completion tasso migliorato a 2.7
Che Cos'è un Array?
Scorri per mostrare il menu
Array
Memorizzare informazioni esclusivamente nelle variabili non è sempre conveniente, poiché consumerebbe una quantità significativa di memoria stack e richiederebbe molte righe di codice.
La soluzione a questo problema sono gli array.
Analisi della sintassi di base per dichiarare un array in Java:
Main.java
1dataType[] arrayName = new dataType[capacity];
È possibile utilizzare qualsiasi tipo di dato durante la dichiarazione di un array, inclusi int, float, char e altri. È anche possibile utilizzare le proprie classi personalizzate nelle dichiarazioni di array. L'apprendimento su come creare le proprie classi e i relativi oggetti sarà trattato in un apposito corso Java Extended.
È obbligatorio specificare la dimensione dell'array tra parentesi quadre ([]). Consideriamo un esempio di creazione di un array di tipo int con dimensione 5:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Prints the size of the array System.out.println(intArray.length); } }
Come avrai notato, abbiamo utilizzato qualcosa di insolito insieme all'output della console. Questo elemento è chiamato proprietà dell'array.
Gli array possiedono proprietà proprie.
Le proprietà vengono richiamate utilizzando la notazione punto (.) sull'oggetto che le possiede. Nel nostro esempio, l'array intArray ha delle proprietà e ne stiamo utilizzando una.
La proprietà .length restituisce la dimensione (lunghezza) dell'array come valore int. Questo può essere scritto anche in modo diverso:
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Declares a new int with the value of the array's size int length = intArray.length; // Prints the size of the array System.out.println(length); } }
Ora, esaminiamo tre metodi e proprietà fondamentali per lavorare con gli array:
Arrays.sort(array): ordina gli elementi dell'array in ordine crescente;Arrays.fill(array, value): imposta tutti gli elementi dell'array al valore specificato;Arrays.toString(array): converte l'array in una rappresentazione testuale, facilitando la visualizzazione dei suoi elementi.
Main.java
1234567891011121314151617package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int[] array = {5, 2, 9, 1, 6}; // Sort the array Arrays.sort(array); System.out.println("Sorted array: " + Arrays.toString(array)); // Fill the array with the value 0 Arrays.fill(array, 0); System.out.println("Array after filling: " + Arrays.toString(array)); } }
Per prima cosa, ordina l'array in ordine crescente utilizzando Arrays.sort() e visualizza l'array ordinato tramite Arrays.toString(), che converte l'array in un formato stringa leggibile. Successivamente, tutti gli elementi dell'array vengono sostituiti con 0 utilizzando Arrays.fill(), e l'array aggiornato viene stampato nello stesso formato leggibile.
Come accedere a dati specifici in un array?
Gli array in Java sono indicizzati. Ogni elemento dell'array si trova in una propria cella ed è assegnato a un ID univoco. La numerazione degli elementi all'interno dell'array inizia da 0. Supponiamo di avere un array di numeri da zero a nove, quindi contiene 10 elementi.
Analizziamo un diagramma che illustra come gli elementi sono organizzati all'interno dell'array:
Se abbiamo un array con 10 elementi, il primo elemento sarà memorizzato all'indice 0 e l'ultimo all'indice 9, poiché l'indicizzazione parte da zero.
La pratica è sempre meglio della sola teoria, quindi esaminiamo un esempio di aggiunta e rimozione di elementi da un array utilizzando gli indici:
Main.java
12345678910111213141516package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Fills the array with numbers from 1 to 5 intArray[0] = 1; intArray[1] = 2; intArray[2] = 3; intArray[3] = 4; intArray[4] = 5; // Prints the fourth element of the array System.out.println(intArray[3]); } }
Abbiamo popolato il nostro array con elementi da uno a cinque specificando ciascun elemento tramite un indice. Tuttavia, questo approccio non è elegante e richiede molte righe di codice. Esploriamo un metodo alternativo per dichiarare un array già precompilato:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { // Declares a new pre-filled int array with a length of 5 int[] intArray = {1, 2, 3, 4, 5}; // Prints the first element of the array System.out.println(intArray[0]); } }
Abbiamo creato un array identico a quello realizzato in precedenza, ma questa volta sono state necessarie meno righe di codice e il risultato appare più elegante.
È importante notare che, utilizzando questa notazione per gli array, gli elementi devono essere racchiusi tra parentesi graffe ({}) e separati da virgole.
1. Cosa verrà stampato eseguendo questo codice?
2. Cosa verrà stampato quando eseguiamo questo codice?
Grazie per i tuoi commenti!