1. Esempi utili di lavoro con gli array:
Penso che sia giunto il momento di passare ad alcuni compiti pratici. Inizieremo con alcuni dei più semplici:
| Riempire un array di 10 numeri con i numeri da 0 a 9: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = i;
}
|
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Assegnare alle celle i valori da 0 a 9
|
| Riempire un array di 10 numeri con i numeri da 1 a 10: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = i + 1;
}
|
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Assegnare alle celle i valori da 1 a 10
|
| Riempire un array di 10 numeri con i numeri da 10 a 1: |
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = 10 - i;
}
|
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Assegnare alle celle i valori da 10 a 1
|
2. Visualizzazione dei numeri in ordine inverso
Ora passiamo ad esempi più complessi e interessanti. Inizieremo con il seguente compito: leggere 10 numeri dalla tastiera e visualizzarli in ordine inverso.
Sappiamo come leggere i numeri dalla tastiera. Ma come si leggono 10 numeri? Potremmo, ovviamente, creare 10 variabili: a1, a2, ecc. Ma sarebbe super scomodo. E se dovessimo leggere in 100 numeri? Creeremmo 100 variabili? Come accade, abbiamo appena imparato a conoscere gli array, che vengono creati per memorizzare molti valori.
Il codice per la lettura in 10 valori sarebbe simile a questo (questo frammento apparirebbe all'interno del mainmetodo):
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
|
- Crea un
Scanneroggetto
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Leggi un numero dalla tastiera e salvalo nella cella successiva dell'array
|
Ma come si stampano i valori dell'array in ordine inverso?
Per fare ciò, abbiamo bisogno di un altro ciclo, dove iassumerà valori da 9 a 0 (non dimenticare che il numero di indici dell'array parte da 0). Il codice finale del programma sarà simile a questo:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
for (int i = 9; i >= 0; i--) {
System.out.println(array[i]);
}
|
- Crea un
Scanneroggetto
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Leggi un numero dalla tastiera e salvalo nella cella successiva dell'array
- Loop da 9 a 0 (compreso)
- Visualizza la cella successiva nell'array
|
3. Trovare l'elemento minimo in un array
Diamo un'occhiata a un compito molto interessante e comune: trovare l'elemento minimo in un array. Prenderemo il codice che abbiamo usato per popolare l'array nell'attività precedente:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
|
- Crea un
Scanneroggetto
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Leggi un numero dalla tastiera e salvalo nella cella successiva dell'array
|
Ora tutto ciò che dobbiamo fare è scrivere il codice che troverà l'elemento minimo nell'array e lo visualizzerà sullo schermo. Come si fa a farlo?
Bene, per trovare l'elemento minimo, devi:
- Prendi il primo elemento dell'array come "minimo corrente".
- Confronta tutti gli elementi dell'array con esso uno per uno
- Se l'elemento successivo è minore del "minimo corrente", aggiorna il valore del "minimo corrente"
Ecco come apparirà nel codice:
Scanner console = new Scanner(System.in);
int[] array = new int[10];
for (int i = 0; i < 10; i++) {
array[i] = console.nextInt();
}
int min = array[0];
for (int i = 1; i < 10; i++) {
if (array[i] < min)
min = array[i];
}
System.out.println(min);
|
- Crea un
Scanneroggetto
- Crea un oggetto matrice di 10 elementi
- Ciclo da 0 a 9 (compreso)
- Leggi un numero dalla tastiera e salvalo nella cella successiva dell'array
- L'elemento zero dell'array viene preso come numero minimo
- Ciclo da 1 a 9 (compreso)
- Se l'elemento corrente è minore del "minimo corrente"
- quindi aggiornare il valore del "minimo corrente"
- Visualizza il numero minimo trovato sullo schermo
|
GO TO FULL VERSION