Código difícil de compreender

Galera eu não consegui compreender o seguinte código:

[color=orange]public class Programa{

public static void main(String[] args){

for (int i = 0; i < 100; i++) {
if (i > 50 && i < 60) {
continue;
}
System.out.println(i);
}
}
}[/color]

Gostaria que vocês me ajudassem, por favor sem criticas, sou iniciante e vim buscar ajuda.

EDIT: Gostaria de saber mais especificamente como funcionar o "&&", exemplo nesse linha: [color=red]if (i > 50 && i < 60) { [/color]. Por favor explique e de um exemplo com ele funcionando em um programa ou como ele funcionará.

Roda números de 0 a 99.
Se estiver entre 51 e 59 ele pula.
Fora isso entra no println.
Porém acho que falta printar o número aí.
daí você poderia ver o que acontece.
Tenta debugar para ver o sistema funcionando e entender melhor.

[code]public class Programa{

public static void main(String[] args){

for (int i = 0; i < 100; i++) {
if (i > 50 && i < 60) {
continue;
}
System.out.println(i);
}
}
} [/code]

Ao meu ver , ele era pra ter uma ação ao entrar no if(i>50 && i<60) mais ela não pula nenhum numero, ele imprime todos !

Se voce tiver isso:

[code]public class Programa{

public static void main(String[] args){

for (int i = 0; i < 100; i++) {
if (i > 50 && i < 60) {
System.out.prinln("Esse sim >" + i)
} else {
System.out.println("Esse não >" + i);
}
}
}
} [/code]

Os valores entre 50 e 60(não inclusos) serão imprimidos juntamente a "Esse sim >" e os demais serão impressos juntamente a "Esse não >". Resumindo, para pular seria necessario um else… como no if tem apenas um continue ele continua o codigo naturalmente mesmo entrando no if.

O continue faz saltar para a iteração seguinte do for NÃO IMPRIMINDO os número entre 50 e 60.

Por favor, leia as regras do fórum:

Em especial a parte sobre títulos descritivos, sobre marcadores inúteis e sobre não abusar de letras maiúsculas e coloridas.
Ah, e também sobre como usar a tag code. Melhor ainda, leia o documento todo…

Estudando, coloque seu código entre as tags [“code”] ["/code"]", e tente identar seu código, como você é iniciante, talvez não saiba o que seja, seria uma forma mais organizada de postar seu código.

Por exemplo:


public class Programa {

	public static void main(String[] args) {

		for (int i = 0; i < 100; i++) {
			if (i > 50 && i < 60) {
				continue;
			}
			System.out.println(i);
		}
	}
}

[quote=estudando]Galera eu não consegui compreender o seguinte código:

[code]public class Programa{

public static void main(String[] args){

for (int i = 0; i < 100; i++) {
if (i > 50 && i < 60) {
continue;
}
System.out.println(i);
}

}
}[/code]

EDIT: Gostaria de saber mais especificamente como funcionar o && [/quote]

O && é o operador lógico AND ( E em portugues).

A linha se lê: " SE i é maior que 50 E i é menor que 60 ENTÃO"

O operador lógico é a forma de juntar duas expressões lógicas ( ou seja, expressões cujo valor é um booleano TRUE ou FALSE).

Os operadores lógicos em java são de curto-cricuito. Isto significa que a cada expressão que é avaliada a jvm determina se vale a pena testar as outras.
No caso, se i não é maior que 50, então a primeira expressão dá FALSE. Ora, pela tabela de verdade do operador AND, FALSE AND qualquer coisa dá FALSE.
Ou seja, no caso do operador && a jvm não vai testar o resto das expressões se alguma das anteriores deu FALSE.
Esta capacidade dos operadores de curto-circuito é muito útil na prática porque permite encadear expressões um pouco mais complexas. Regras semelhantes acontecem para o operador || que é o operador lógico OR (OU)

Em java existem também os operadores & e |. Estes não são operadores lógicos. São operadores binários. Eles funcionam com qualquer numero binário. Na prática é raro usar estes operadores binários a menos que vc esteja mexendo com protocolos binários ou criptografia. Não confundir & com && porque não é a mesma coisa e embora o resultado lógico é o mesmo, o funcionamento não é devido à caracteristica de curto-circuito que o && tem e o & não tem.

O resto do funcionamento o pessoal já explicou. É um código bem curto, mas que inclui bastantes conceitos ao mesmo tempo, portanto certifique-se que entendeu completamente como funciona e por quê funciona.

Obrigado a todos, agora consegui compreender melhor o código.

Dica : Reformule Melhor a Pergunta !

       assim fica facil de entender sua duvida e fica melhor ainda pra [b]responder[/b]