galera, estava eu fazendo os exemplos da apostila da Caelum (mto bom material por sinal), quando me deparei com o seguinte código:
for(inti=0; i < 100; i++) {if(i>50&&i<60){
continue;
}
System.out.println(i);
}
logicamente está correto, neh? mas qdo eu mando executar ele simplesmente escreve todos os numeros entre 0 e 100. é problema aqui ou algum problema no código?
enfim, a apostila é muito boa… o melhor material sobre java(para iniciantes) q eu jah encontrei.
abraços!
Veja bem, o código está certo, ele só não vai imprimir os valores maiores que 50 e menores que 60, ou seja, ele imprime de 0 a 50 e 60 a 99.
diogo.delgaudio
então não entendi o propósito do continue… :S
G
geraldobarboza
o continue ele pula de onde estiver para proximo loop… ele nâo termina de executar o bloco…
entendeu?
[]´s
Geraldo
diogo.delgaudio
entendi… exatamente por isso minha confusão… ahhaah, então não seria pra mostrar só os nºs entre 50 e 60?
como o amigo disse, ele só NAO mostra os maiores que 50 e menores q 60…fica assim:
for (int i = 0; i < 100; i++) {
if(i > 50 && i < 60) {
continue; // ele nao vai imprimir o i se estiver entre 50 e 60 pois ele vai pular
// o system abaixo
}
System.out.println(i);
}
ele vai imprimir todos numero fora do intervalo de 51 a 59.
[]´s
Geraldo
diogo.delgaudio
então faz o msmo q o break? :S
G
geraldobarboza
não o break ele para o for inteiro… (ele sai do for quando achar o break)
sendo assim se você trocar no seu codigo continue por break ele vai imprimir ate 50 e mais nada.
certo?
[]´s
Geraldo
diogo.delgaudio
ah saquei… o continue pula só a condição, o break para o loop inteiro, neh?
valeu!
G
geraldobarboza
diogo.delgaudio:
ah saquei… o continue pula só a condição, o break para o loop inteiro, neh?