Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Quebrar o boolean ou não?

Fiquei na dúvida se essa quebra do boolean foi só para exemplo, ou se o mais aceito é dessa forma.

Pra mim fica mais simples de entender e mais limpo assim:


boolean acompanhado = quantidadeDePessoas  >= 2;

Mas fiquei na dúvida se o mais aceito seria assim:


boolean acompanhado;

if (quantidadeDePessoas  >= 2) {
            acompanhado = true;
} else {
            acompanhado = false;
}
3 respostas
solução!

Oi Eduardo, tudo bem?

Na verdade, o que acaba acontecendo na maioria das vezes não é nenhuma das situações. O que acontece mais é usar variáveis booleanas para definir um comportamento. Como assim?

O mais comum é fazer o seguinte, sem variáveis booleanas:

    if (quantidadeDePessoas  >= 2) {
                System.out.println("Quantidade maior que 2. Válida.");
    } else {
                System.out.println("Quantidade menor que 2. Inválida.");
    }

Porém, essa nem sempre é uma boa prática: imagine várias condições dentro do if. ficaria difícil de entender, certo? Por isso, colocamos a expressão em uma variável, ficando, no final, assim:

    boolean acompanhado = quantidadeDePessoas  >= 2;
    if (acompanhado) {
                System.out.println("Quantidade maior que 2. Válida.");
    } else {
                System.out.println("Quantidade menor que 2. Inválida.");
    }

Ou seja, a variável é declarada da primeira forma, como você sugeriu, mas não é necessário atribuir novamente true ou false a ela, pois o compilador já entende tudo da forma correta.

Espero ter ajudado! Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Obrigado Iasmin! Ficou bem claro! Abraços

quantidadeDePessoas > 2 ? System.out.println("Quantidade maior que 2. Válida.") : System.out.println("Quantidade menor que 2. Inválida.")

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software