PDA

View Full Version : [JAVA] Cicli for


marcoqwertyuiop
28-08-2015, 14:59
Salve, vorrei un chiarimento:

Ho questi due cicli for annidati:

for (int i = 1; i<=5; i++) {
for(int j = 1; i<= 10; j++)
System.out.print('*');
System.out.println();
}

stampa 5 linee di 10 *

Quello che voglio capire è che quando si entra nel secondo for, viene considerata solo la prima riga System.out.print('*'); mentre la seconda viene utilizzata solo quando la condizione non è più vera e quindi lascia una riga vuota e va a capo?

Ad esempio quando j è uguale a 11 la condizione non è più verificata, qundi esce dal ciclo for ed in quel omento viene considerata la seconda riga?

wingman87
28-08-2015, 15:32
Sì, questo avviene perché il corpo del ciclo for più interno non è stato racchiuso tra parentesi graffe. In questo caso il corpo del ciclo è l'istruzione immediatamente successiva al for.
Indentandolo si capisce meglio:
for (int i = 1; i<=5; i++) {
for(int j = 1; i<= 10; j++)
System.out.print('*');
System.out.println();
}