SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
14.11.2024

Lição: 028: Instruções Break e Continue

Nesta aula, vamos explorar as instruções break e continue em Solidity, que são usadas para controlar o fluxo de loops. Essas instruções podem ajudá-lo a gerenciar a execução de loops de maneira elegante, permitindo que você pule iterações ou saia de loops inteiros com base em certas condições.

Instrução Break

A instrução break é usada para encerrar um loop de forma antecipada. Quando uma instrução break é encontrada, o loop para de ser executado, e o controle é transferido para a instrução imediatamente seguinte ao loop.

Exemplo da Instrução Break

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract ExemploBreak {
    function encontrarPrimeiroPar(uint256 limite) public pure returns (uint256) {
        for (uint256 i = 0; i < limite; i++) {
            if (i % 2 == 0) {
                return i; // Retorna o primeiro número par encontrado
            }
        }
        return limite; // Se nenhum número par for encontrado, retorna o limite
    }
}

Neste exemplo, a função encontrarPrimeiroPar realiza um loop de 0 até limite. Ela usa a instrução break para sair do loop assim que encontra o primeiro número par. No entanto, neste trecho de código, não estamos usando explicitamente o break, mas retornando o número em vez disso. A lógica é essencialmente a mesma.

Para ilustrar um uso claro do break, podemos modificar o código da seguinte forma:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract ExemploBreak {
    function primeiroNumeroPar(uint256 limite) public pure returns (uint256) {
        for (uint256 i = 0; i < limite; i++) {
            if (i % 2 == 0) {
                break; // Saí do loop assim que o primeiro número par é encontrado
            }
        }
        return limite; // O limite será retornado se nenhum número par for encontrado
    }
}

Neste caso, se quiséssemos retornar o número e mostrar como o break interrompe a iteração, poderíamos definir uma variável para armazenar nosso resultado fora do loop.

Instrução Continue

A instrução continue pula a iteração atual de um loop e continua com a próxima iteração desse loop. É útil quando você deseja ignorar casos específicos sem terminar todo o loop.

Exemplo da Instrução Continue

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract ExemploContinue {
    function contarImpares(uint256 limite) public pure returns (uint256) {
        uint256 contagemImpar = 0;

        for (uint256 i = 0; i < limite; i++) {
            if (i % 2 == 0) {
                continue; // Pula os números pares
            }
            contagemImpar++; // Conta os números ímpares
        }
        return contagemImpar; // Retorna a contagem de números ímpares
    }
}

Na função contarImpares, estamos contando o número de números ímpares até o limite. A instrução continue nos permite pular a contagem de números pares, garantindo que apenas números ímpares contribuam para a contagem.

Resumo

Nesta aula, cobrimos como usar as instruções break e continue em Solidity para gerenciar o fluxo de loops. A instrução break permite que você saia de um loop antecipadamente com base em uma condição especificada, enquanto a instrução continue possibilita que você pule a iteração atual e prossiga com a próxima.

Essas instruções de controle podem melhorar significativamente a legibilidade e a manutenção do seu código, especialmente em estruturas de loops complexas. À medida que você pratica o uso dessas instruções, você as encontrará como ferramentas valiosas em sua caixa de ferramentas de programação em Solidity.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!