Foro sobre Java SE > Duda for
Hola @Ruben primero: el do while debes saber que la setencia do se ejecuta por lo menos una ves.
bueno aclarado esto vamos a los numeros (ejecutemos el programa)
en la primera iteración del for j=0, e i=3
primera interacion do while
operamos i+j=3
ejecutamos nuestra setencia print y escribe el 3
se aumenta j
j<3 si ( j vale 1)
segunda iteracion
operamos i+j=4
imprime 4
se aumenta j
j<3 si ( j vale 2)
tercera iteracion
operamos i+j=5 (3+2)
imprimo 5
aumentamos j
j<3 no (j vale 3)
se sale del ciclo do
el for aumenta i=4.
(como dije el do se ejecuta por lo menos una vez)
entonces operamos i+j=(4+3)=7
imprimimos 7
j<3 no (se sale del do while)
for aumenta i=5; i<5 no. se sale del for
como sabes print no hace salto de linea entonces tenemos los números
3457.
imagino que tu duda era porque imprime 7, pero es porque el do while se ejecuta por lo menos una vez.
espero verte aclarado la duda.
saludos.
Muchísimas gracias me lo explicaste perfecto, ahora ya lo tengo claro
un saludo
Rubén
Estoy empezando y no consigo entender porqué esta sentencia imprime en pantalla
3457
public void print(){
int j=0;
for(int i=3;i<5;i++){
do{System.out.print(i+j);
j++;
}
while(j<3);
}
}