Vi essa palavra-chave pela primeira vez e fiquei pensando se alguém poderia me explicar o que faz.
- Qual é a
continue
palavra - chave? - Como funciona?
- Quando é usado?
Uma continue
instrução sem um rótulo será reexecutada da condição do mais interno while
ou do do
loop e da expressão de atualização do for
loop mais interno . É frequentemente usado para finalizar antecipadamente o processamento de um loop e, assim, evitar if
instruções profundamente aninhadas . No exemplo a seguir continue
, obterá a próxima linha, sem processar a seguinte instrução no loop.
while (getNext(line)) {
if (line.isEmpty() || line.isComment())
continue;
// More code here
}
Com um rótulo, continue
será reexecutado a partir do loop com o rótulo correspondente, em vez do loop mais interno. Isso pode ser usado para escapar de loops profundamente aninhados ou simplesmente para maior clareza.
Às vezes, continue
também é usado como um espaço reservado para tornar um corpo de loop vazio mais claro.
for (count = 0; foo.moreData(); count++)
continue;
A mesma declaração sem um rótulo também existe em C e C ++. O equivalente em Perl é next
.
Esse tipo de fluxo de controle não é recomendado, mas se você escolher, também poderá usar continue
para simular uma forma limitada de goto
. No exemplo a seguir, continue
ele executará novamente o for (;;)
loop vazio .
aLoopName: for (;;) {
// ...
while (someCondition)
// ...
if (otherCondition)
continue aLoopName;
continue
é tipo como goto
. Você está familiarizado break
? É mais fácil pensar neles em contraste:
break
finaliza o loop (salta para o código abaixo dele).
continue
finaliza o restante do processamento do código dentro do loop para a iteração atual, mas continua o loop.
Vamos ver um exemplo:
Isso obteria a soma de apenas números ímpares de 1 a 100.
fonte
Se você pensa no corpo de um loop como uma sub-rotina,
continue
é mais ou menos comoreturn
. A mesma palavra-chave existe em C e serve ao mesmo objetivo. Aqui está um exemplo artificial:Isso imprimirá apenas os números ímpares.
fonte
Geralmente, vejo
continue
(ebreak
) como um aviso de que o código pode usar alguma refatoração, especialmente se owhile
oufor
declaração loop não estiver à vista imediatamente. O mesmo acontecereturn
no meio de um método, mas por um motivo um pouco diferente.Como outros já disseram,
continue
passa para a próxima iteração do loop, enquantobreak
sai do loop fechado.Podem ser bombas de tempo de manutenção porque não há um vínculo imediato entre o
continue
/break
e o loop que continua / interrompe, exceto o contexto; adicione um loop interno ou mova as "tripas" do loop para um método separado e você terá um efeito oculto docontinue
/break
falha.IMHO, é melhor usá-los como uma medida de último recurso e garantir que seu uso seja agrupado firmemente no início ou no final do loop, para que o próximo desenvolvedor possa ver os "limites" do loop em uma tela .
continue
,break
Ereturn
(que não seja o verdadeiro retorno no final do seu método), todos caem na categoria geral de "GOTOs escondidos". Eles colocam o controle de loop e função em locais inesperados, o que eventualmente causa bugs.fonte
"continue" em Java significa ir para o final do loop atual, significa: se o compilador vê continuar em um loop, ele irá para a próxima iteração
Exemplo: este é um código para imprimir os números ímpares de 1 a 10
o compilador ignorará o código de impressão sempre que vir continuar na próxima iteração
fonte
Como já mencionado
continue
, pulará o processamento do código abaixo e até o final do loop. Em seguida, você é movido para a condição do loop e executa a próxima iteração se essa condição ainda persistir (ou se houver um sinalizador, para a condição do loop indicado).Deve-se destacar que, no caso de
do - while
você ser movido para a condição na parte inferior após umcontinue
, não no início do loop.É por isso que muitas pessoas falham em responder corretamente o que o código a seguir irá gerar.
* Se sua resposta for que
aSet
conterá números ímpares apenas 100% ... você está errado!fonte
Continue é uma palavra - chave em Java e é usada para pular a iteração atual.
Suponha que você queira imprimir todos os números ímpares de 1 a 100
A instrução continue no programa acima simplesmente ignora a iteração quando i é par e imprime o valor de i quando é ímpar.
A instrução Continue simplesmente tira você do loop sem executar as instruções restantes dentro do loop e dispara a próxima iteração.
fonte
Considere uma condição If Else. Uma instrução continue executa o que existe em uma condição e sai da condição, ou seja, passa para a próxima iteração ou condição. Mas uma pausa sai do circuito. Considere o seguinte programa. "
Ele será impresso: aa cc Fora do loop.
Se você usar quebra no lugar de continuar (Depois de se.), Ela imprimirá aa e fora do loop .
Se a condição "bb" for igual a ss, for satisfeita: For Continue: Ir para a próxima iteração, ou seja, "cc" .equals (ss). For Break: sai do loop e imprime "Out of the loop".
fonte
break
Estou um pouco atrasado para a festa, mas ...
Vale ressaltar que
continue
é útil para loops vazios, onde todo o trabalho é feito na expressão condicional que controla o loop. Por exemplo:Nesse caso, todo o trabalho de ler um caractere e anexá-lo
buffer
é feito na expressão que controla owhile
loop. Acontinue
declaração serve como um indicador visual de que o loop não precisa de um corpo.É um pouco mais óbvio que o equivalente:
e um estilo de codificação definitivamente melhor (e mais seguro) do que usar uma declaração vazia como:
fonte
while
ao corpo dawhile
cláusula e que não seria visualmente óbvio. Um explícitocontinue
é óbvio e transmite uma intenção que uma declaração vazia não.Basicamente em java, continue é uma declaração. A instrução continue é normalmente usada com os loops para pular a iteração atual.
Para como e quando é usado em java, consulte o link abaixo. Tem explicação com exemplo.
https://www.flowerbrackets.com/continue-java-example/
Espero que ajude !!
fonte
continue
deve estar dentro de um loop Caso contrário, ele mostraO erro abaixo:fonte
A instrução continue é usada na estrutura de controle de loop quando você precisa pular para a próxima iteração do loop imediatamente.
Pode ser usado com loop for ou while. A instrução continue do Java é usada para continuar o loop. Ele continua o fluxo atual do programa e ignora o código restante na condição especificada.
No caso de um loop interno, ele continua apenas o loop interno.
Podemos usar a instrução Java continue em todos os tipos de loops, como loop for, while loop e do-while.
por exemplo
resultado:
[número 5 é pular]
fonte