Come scrivere un ciclo for in Java

Come scrivere un ciclo for in Java

I loop sono strumenti di programmazione molto potenti che completeranno una serie di istruzioni fino a quando non viene soddisfatta una condizione. Sono molto utili e dovrebbero essere uno dei primi concetti di programmazione che impari. Esistono molti tipi diversi di loop, ma per i loop sono probabilmente uno dei loop più utili.





Il ciclo For in Java

I cicli for continueranno a eseguire un blocco di codice fino a quando non viene soddisfatta una condizione. È importante notare che un ciclo for controllerà la condizione all'inizio del ciclo, non alla fine. Ciò significa che se la condizione è soddisfatta, il ciclo non verrà avviato.





La sintassi del ciclo For è simile tra i linguaggi di programmazione. Quindi, se hai creato un ciclo for in un altro linguaggio di programmazione, un ciclo for Java ti sembrerà familiare. Tuttavia, se non hai familiarità con Java, ti consigliamo di leggere un tutorial per principianti prima di apprendere argomenti avanzati come i cicli for.





for([statement1]; [condition]; [statement2]){
//code to execute each loop
}

La parola chiave per indica un ciclo for. La condizione che determina la durata del ciclo si trova tra le parentesi.

La prima istruzione viene eseguita una volta quando viene avviato il ciclo for; la condizione definisce quando il ciclo dovrebbe fermarsi.



La seconda istruzione viene eseguita alla fine di ogni ciclo. Il punto e virgola segna la fine di dichiarazione1 e la condizione.

In genere, le istruzioni vengono utilizzate per creare un contatore e la condizione interrompe il ciclo una volta che il contatore raggiunge un numero specifico. Infine, il codice che viene eseguito in ogni ciclo viene inserito tra le parentesi graffe.





public class Main{
public static void main(String[] args) {
for(int i = 1; i <4; i++){
System.out.print(i);
}
}
}
//Output: 123

Nell'esempio sopra, il ciclo for stampa il valore di io . La parola chiave per inizializza il ciclo. La variabile io è inizialmente impostato su 1. La condizione verifica se io è quattro o più. Questo non è il caso, quindi il nostro ciclo viene eseguito. Il codice del ciclo stampa il valore di io , che è ancora 1 a questo punto.

Una volta completato il codice del ciclo, io viene incrementato di uno e il ciclo ricomincia. Alla fine del terzo ciclo, io è aumentato a quattro. Quando inizia il ciclo successivo, la nostra condizione è soddisfatta, quindi il ciclo si interrompe.





Relazionato: Concetti fondamentali di Java che dovresti imparare all'inizio

Annidato per loop

Una volta che hai imparato a usare un ciclo for, dovresti provare a creare un ciclo for nidificato. Questo è quando hai un ciclo for all'interno di un altro ciclo for. Questa è una tecnica avanzata perché può essere difficile capire come interagiranno i due loop. Un buon modo per visualizzare come funzionano i cicli for nidificati consiste nel creare il modello seguente con un ciclo for nidificato.

*
**
***

Per creare questo, avremo bisogno di un ciclo per controllare quante stelle sono stampate su ogni riga e un altro ciclo per controllare quante righe creare. Quando si è nuovi ai cicli nidificati per, può essere difficile determinare quale ciclo è il ciclo interno. In questo caso, il ciclo che stampa le stelle è il ciclo interno. Abbiamo bisogno che quel ciclo venga eseguito ogni volta che viene creata una nuova riga.

Quando crei un ciclo annidato, fai attenzione quando scegli il nome delle variabili del contatore. Sebbene spesso i programmatori utilizzino un generico io counter, l'utilizzo di contatori generici crea confusione quando interagiscono più cicli.

for(int lineCounter = 1; lineCounter <4; lineCounter++){
for(int starCounter = 1; starCounter <= lineCounter; starCounter++){
System.out.print('*');
}
System.out.print('
');
}

Esaminiamo questo esempio per capire meglio come funziona.

Il nostro primo ciclo conta quante linee facciamo. Dopo che il ciclo viene eseguito tre volte, si fermerà.

Il ciclo successivo è un po' più complesso. Questo ciclo controlla quante stelle sono stampate su ogni riga. Nel nostro modello, vogliamo lo stesso numero di stelle del numero di riga. La prima riga ha una stella, la seconda due e la terza tre. Quindi, vogliamo che quel ciclo stampi tante stelle quante sono il nostro contatore di linee corrente.

Dopo che il nostro ciclo a stella è stato completato, il ciclo di linea crea una nuova linea stampando , che è il comando per una nuova riga.

Cicli Infiniti

Uno dei pericoli della codifica di qualsiasi tipo di loop è che puoi creare accidentalmente un loop infinito. Sono loop che non si fermano mai. Sebbene ci siano casi in cui è necessario un ciclo infinito, generalmente, vengono creati per caso quando la condizione del ciclo non è pianificata con cura. In questi casi, il programma continuerà a funzionare finché non ne imposti la chiusura.

Per creare un ciclo infinito, puoi utilizzare la seguente sintassi:

for(;;){
//code that never stops looping
}

Correlati: siti Web e app che possono aiutare durante l'apprendimento della programmazione Java

Utilizzo di un ciclo For con un array

Un modo comune per utilizzare un ciclo for è scorrere un array. Ad esempio, se vuoi stampare tutte le stringhe di un array, non puoi semplicemente dire

System.out.print([array]);

Questo comando stamperebbe le informazioni sull'array, non il contenuto dell'array. Per stampare il contenuto dell'array, devi stampare ogni singolo elemento nell'array. Questo richiederebbe molto tempo per codificare, ma potresti creare un ciclo for per passare attraverso ogni elemento.

String[] words = {'Hello', ' ', 'World', '!'};

for(int i = 0; i System.out.print(words[i]);
}

Ricorda, le posizioni dell'array iniziano da zero, non da uno, quindi vogliamo che il nostro ciclo inizi da zero. Verrà stampato il nostro primo ciclo Ciao , il secondo ciclo stamperà uno spazio e così via. Dopo il quarto ciclo, il nostro contatore verrà incrementato a quattro, che non è inferiore alla lunghezza dell'array, che è anche quattro. Questo fermerà il ciclo.

Produzione:

Hello World!

Per ogni ciclo

Sebbene sia possibile utilizzare un ciclo for per eseguire l'iterazione su un array, è più semplice utilizzare un ciclo for-each. Questi loop sono progettati specificamente per gli array. Un per ogni ciclo passerà attraverso ogni elemento in un array ed eseguirà il codice. I cicli For-each hanno una sintassi leggermente diversa. La parola chiave per è ancora utilizzato, ma non è specificata una condizione.

for([dataType] [arrayElement] : [array]){
//code to be executed
}

Il nostro esempio precedente può essere riscritto come un ciclo for-each usando questa sintassi:

String[] words = {'Hello', ' ', 'World', '!'};

for(String word : words){
System.out.print(word);
}

Il ciclo viene avviato con la parola chiave per . Specifichiamo quindi che i dati nel nostro array sono stringhe. Successivamente, scegliamo un nome di variabile per fare riferimento agli elementi nell'array mentre iteriamo attraverso il ciclo. In questo caso, abbiamo usato parola . Questo è seguito da due punti e dal nome dell'array che vogliamo scorrere. Ora, all'interno del nostro ciclo, non ci resta che usare la variabile parola per fare riferimento a ciascun elemento dell'array.

Quando usare un ciclo For

I For Loop sono ottimi strumenti che possono farti risparmiare un sacco di codice. Sono il miglior tipo di loop da usare quando sai esattamente quante volte vuoi che il tuo loop venga eseguito. Puoi persino aumentare la complessità dei cicli for nidificandoli.

I cicli for annidati sono particolarmente utili quando si lavora con array multidimensionali. Per i loop sono facili da imparare e un'abilità importante per i principianti. Questa tecnica ti salverà sicuramente dalla codifica di codice ripetitivo non necessario.

come riparare questo accessorio potrebbe non essere supportato
Condividere Condividere Tweet E-mail I 9 migliori editor di codice gratuiti per scrivere la tua prima app

Un buon editor di codice può rendere la vita di un programmatore molto più semplice, ma qual è il migliore per te?

Leggi Avanti
Argomenti correlati
  • Programmazione
  • Giava
  • Programmazione
Circa l'autore Jennifer Seaton(21 articoli pubblicati)

J. Seaton è uno scrittore scientifico specializzato nell'analisi di argomenti complessi. Ha un dottorato di ricerca presso l'Università del Saskatchewan; la sua ricerca si è concentrata sull'utilizzo dell'apprendimento basato sul gioco per aumentare il coinvolgimento degli studenti online. Quando non lavora, la troverai mentre legge, gioca ai videogiochi o fa giardinaggio.

Altro da Jennifer Seaton

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti