Olá desenvolvedores, o assunto de hoje é ESTRUTURAS DE REPETIÇÃO Em JAVA, que são estruturas que servem para que uma lista de dados, por exemplo, seja processada continuamente, desde que satisfaça uma condição de continuação. As instruções de repetição em Java são while, do…while e for. Leia também sobre as “ESTRUTURAS DE SELEÇÃO”, o conteúdo está incrível e é complementar a este.

VÍDEO AULA – ESTRUTURAS DE REPETIÇÃO.

Assim, as estruturas de repetição que também são conhecidas como iteração, ou laços (loops), são utilizadas para executar, repetidamente, uma instrução ou um bloco de instruções enquanto determinada condição estiver sendo satisfeita.

As estruturas while e for processam uma instrução ou grupo de instrução, zero ou mais vezes, se a condição de continuação do loop for verdadeira ou enquanto ela for verdadeira, mas se esta condição for falsa a ação não será executada. O do…while, processa uma instrução ou grupo de instruções uma ou mais vezes.

Cada sistema ou programa de computador faz uso de quantas combinações de estruturas de repetição e/ou estruturas de decisão forem necessárias. E toda estrutura de repetição compõem-se de quatro elementos, a saber, inicialização, condição, corpo e interação.

A inicialização em estruturas de repetição é o primeiro passo em sua formatação. A expressão condicional em si é, assim como nas estruturas de decisão uma expressão booleana que é avaliada a cada iteração, para determinar se haverá ou não uma nova iteração. O corpo pode ser composto por uma única instrução ou um conjunto de instruções. A iteração é instrução booleana que deverá ser executada depois do corpo e antes de uma nova repetição.

ESTRUTURA DE REPETIÇÃO WHILE

Uma estrutura de repetição while, que em português significa enquanto, especifica que um sistema ou programa de computador deve repetir uma instrução ou um conjunto de instruções enquanto a condição que é uma expressão booleana permanece verdadeira.

O exemplo abaixo, compreende um pseudocódigo que escreve no console o nome do nosso curso “Formação Java Web” enquanto dado número representado pela variável “num” e inicializado com 0, for menor do que 100.

num = 0;

while (num < 100){
System.out.println("Formação Java web");
num++;
}

A instrução somente será executada enquanto a condição for verdadeira ou até que ela seja falsa, quando não mais será executada.

Vamos entender o processo percorrendo o pseudocódigo, a condição é avaliada, e se “retornar” um valor true, a instrução para “escrever no console” será executada, após isso a variável “num” que neste exemplo exerce a função de variável de controle ou contador, terá o seu valor incrementado em (+1) e uma nova iteração será realizada, e de novo, e de novo, até que a expressão condicional “retorne” um valor false.

É importante que você entenda que em algum momento da iteração, a estrutura de repetição deverá encontrar um valor de condição que seja falso, para que ela possa parar o processamento, caso contrário permanecerá em um loop infinito.

DIAGRAMA DE BLOCOS | INSTRUÇÃO WHILE

Abaixo, um diagrama de bloco que exemplifica muito bem o fluxo de execução do nosso algoritmo.

Mencionamos que a variável “num” exerce no pseudocódigo acima a função de variável de controle, em outras palavras significa que ela é a variável responsável por controlar o número de vezes que um conjunto de instrução será executado.

Uma estrutura de repetição controlada por um contador também possui quatro elementos base que são necessários para realizar a repetição, variável de controle, valor inicial, incremento e a condição de continuação do loop.

Já sabemos que a variável de controle é o contador do loop, assim podemos inferir que o valor inicial é o valor com que a inicializamos. Lembram do pseudocódigo lá atrás? Lembram do valor com que a variável “num” foi inicializada? Exatamente, em nosso exemplo o valor inicial da variável de controle, “num”, foi “zero”.

A cada passagem pelo loop a variável de controle é incrementada. Isto é, cada vez que fazíamos uma iteração, “num” era incrementado em (+1), esta é a definição de incremento. E por fim, o que determinará se haverá mais uma iteração ou não é a condição de continuação do loop representado pela expressão booleana.

ESTRUTURA DE REPETIÇÃO DO…WHILE

Você já deve imaginar que a estrutura de repetição do…while é uma variação da while. A principal diferença entre elas é que, como já dissemos, o while processa uma instrução ou grupo de instrução, zero ou mais vezes, ao passo que o do…while processa uma instrução, obrigatoriamente pelo menos uma vez, e se necessário outras tantas vezes.

Assim, implica que o corpo da estrutura, ou seja, o bloco de instrução será executado pelo menos uma vez antes que a condição do loop seja testada. Nosso pseudocódigo ficaria assim:

num = 0

do{
System.out.println("Formação Java web");
num+-+;
}while (num < 100);

ESTRUTURA DE REPETIÇÃO FOR

Lembra que utilizamos uma estrutura de repetição controlado por um contador com o while? O for que em português significa “para”, não apenas é capaz de implementar esse tipo de repetição como o faz em uma única linha.

O for também é uma instrução de repetição que processa uma instrução ou grupo de instrução zero ou mais vezes. O que munda é a sintaxe, no caso do for a variável de controle, o valor inicial, o incremento e a condição de continuação do loop, são declarados como em uma espécie de cabeçalho, também chamado de cabeçalho da instrução for.

O formato da sintaxe da instrução de repetição for fica assim:

Detalhando a estrutura acima temos a palavra reservada for, a variável de controle seguida do seu valor de inicialização, e então esse bloco do cabeçalho é separado por um ponto e vírgula, continuando temos a condição de continuação do loop que é uma expressão booleana, o ponto e vírgula e o incremento.

Todo laço de repetição escrito obedecendo as regras de sintaxe da estrutura while também pode ser escrito com a sintaxe do for, como exemplo, o nosso velho conhecido pseudocódigo.

for(int num = 0; num < 10; num++){
System.out.println("Formação Java web");
}

Note que dessa vez não foi necessário declarar a variável “num” fora da estrutura, nós a declaramos localmente dentro do cabeçalho do for. Obviamente haverá algumas restrições quanto ao uso dessa variável fora do laço de repetição, mas este é um assunto para outro tutorial.

EM POUCAS PALAVRAS

Antes de fazermos um resumo do que aprendemos sobre as estruturas de repetição, como dizia Steve Jobs, “só mais uma coisa”, recomenda-se usar o for quando já soubermos a quantidade de vezes que uma dada instrução deverá ser repetida, e o while quando não soubermos exatamente, porém, neste caso, impomos uma condição de parada.

E ainda, existe uma situação qual chamamos de repetição definida, esta situação ocorre quando o número de execuções é antecipadamente conhecido, ou seja, a quantidade de repetições é conhecida antes do loop começar. Esta repetição definida, pode acontecer também com o while. Mas recomendamos que você adote as boas práticas de programação e principalmente o bom senso.

O nosso “Em poucas palavras” de hoje se estendeu um pouco, mas foi por uma boa causa, aprendemos hoje sobre os laços de repetição, while, do…while e for e o poder dessas três estruturas. Você notará que em sua vida de programador irá usar e abusar dessas instruções.

É isso desenvolvedores, espero que tenham gostado de aprender sobre as estruturas de repetição. Qualquer dúvida nos pergunte e interaja com a comunidade do JDev Treinamento no Telegram.

Aprenda mais sobre a lógica com Java.

Lógica + JAVA
Clique aqui

 

Curso de programação para você

Selecionei os cursos on-line para você se preparar e abrir as portas para as vagas de programação. Conheça cada um dos cursos nos links oficiais abaixo.

🙂

Curso Profissional + Certificado + Acesso Vilatício + Suporte.


curso de java profissional

Full-Stack Web Java EE

Mais de 900 aulas em PrimeFaces, JSF, Spring, Hibernate, JPA, Ireport, CDI e muitos mais. Se torne Full-Stack Java Web.

Conhecer Curso


Lógica de Programação

Lógica de Programação

Para se tornar um programador e resolver problemas complexos a sua lógica de programação deve ser a melhor de todas..

Conhecer Curso