estudando:
Galera eu não consegui compreender o seguinte código:
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);
}
}
}
EDIT: Gostaria de saber mais especificamente como funcionar o &&
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.