SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
13.11.2024

Lição: 011: Trabalhando com Tipos Booleanos em Solidity

Em Solidity, um tipo booleano representa um valor que pode ser true ou false. Booleanos são frequentemente utilizados em instruções condicionais, controle de fluxo e flags. Nesta aula, vamos explorar como declarar, inicializar e usar tipos booleanos em Solidity através de exemplos simples.

Declarando Variáveis Booleanas

Você pode declarar uma variável booleano usando a palavra-chave bool. Aqui está um exemplo simples:

pragma solidity ^0.8.0;

contract ExemploBooleano {
    bool public estaAtivo; // Variável booleana pública

    constructor() {
        estaAtivo = false; // Valor inicial definido como false
    }
}

Neste exemplo, declaramos uma variável booleana pública estaAtivo e a inicializamos com o valor false no construtor.

Atribuindo Valores Booleanos

Você pode atribuir valores a variáveis booleanas diretamente:

function ativar() public {
    estaAtivo = true; // Define estaAtivo como true
}

function desativar() public {
    estaAtivo = false; // Define estaAtivo como false
}

A função ativar define a variável estaAtivo como true, enquanto a função desativar a redefine como false.

Usando Booleanos em Instruções Condicionais

Booleanos desempenham um papel crucial no controle de fluxo. Aqui está um exemplo de como usar um booleano em uma instrução condicional:

function status() public view returns (string memory) {
    if (estaAtivo) {
        return "O contrato está ativo.";
    } else {
        return "O contrato está inativo.";
    }
}

Na função status, verificamos o valor de estaAtivo. Se for avaliado como true, retornamos "O contrato está ativo." Caso contrário, retornamos "O contrato está inativo."

Operações Lógicas com Booleanos

Você pode realizar operações lógicas usando valores booleanos. Solidity suporta os seguintes operadores lógicos:

  • && (E Lógico)
  • || (OU Lógico)
  • ! (NÃO Lógico)

Aqui está um exemplo que demonstra essas operações:

contract ExemploLogico {
    bool public flag1;
    bool public flag2;

    constructor() {
        flag1 = true;  // Estado inicial de flag1
        flag2 = false; // Estado inicial de flag2
    }

    function verificarFlags() public view returns (string memory) {
        if (flag1 && flag2) {
            return "Ambas as flags são verdadeiras.";
        } else if (flag1 || flag2) {
            return "Pelo menos uma flag é verdadeira.";
        } else {
            return "Ambas as flags são falsas.";
        }
    }

    function alternarFlag1() public {
        flag1 = !flag1; // Alternar flag1
    }

    function alternarFlag2() public {
        flag2 = !flag2; // Alternar flag2
    }
}

Neste exemplo, utilizamos operações lógicas para verificar o estado de flag1 e flag2. A função verificarFlags retorna uma mensagem correspondente com base nos valores booleanos. As funções alternarFlag1 e alternarFlag2 permitem alternar o estado de cada flag.

Conclusão

Nesta aula, abordamos como trabalhar com tipos booleanos em Solidity. Aprendemos a declarar e inicializar variáveis booleanas, usá-las em instruções condicionais e realizar operações lógicas. Compreender booleanos é essencial, pois eles formam a base de muitas estruturas de controle dentro dos contratos inteligentes.

Experimente os exemplos acima e considere como você poderia incorporar lógica booleana em suas próprias aplicações Solidity!

Video

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

Thank you for voting!