Java - Forma "culta" - if(boolean)

É correto não fazer uma comparação lógica com boolean sendo ele um valor que já é lógico?

[code]boolean active = true; //Essa variável tende a modificar-se durante o programa

if(active == true){ … }
//ou
if(active){ … }

//e se tiver mais de 1?

if(active == true && active2 == true) { … }
if(active && active2) { … }[/code]

Acho que ser breve é sempre bom

[quote=VA][code]boolean active = true; //Essa variável tende a modificar-se durante o programa

if(active == true){ … }
//ou
if(active){ … }
[/code][/quote]
Mais limpo:if(active) { ... }

[quote=VA]

[code]//e se tiver mais de 1?

if(active == true && active2 == true) { … }
if(active && active2) { … }[/code][/quote]
Mais limpo:if(active && active2) { ... }
Ou melhor:

if(areBothActive()){ ... }

private boolean areBothActive() {
    return active && active2; 
}

Pesquise sobre Clean Code.

[quote=VA]É correto não fazer uma comparação lógica com boolean sendo ele um valor que já é lógico?

[code]boolean active = true; //Essa variável tende a modificar-se durante o programa

if(active == true){ … }
//ou
if(active){ … }

//e se tiver mais de 1?

if(active == true && active2 == true) { … }
if(active && active2) { … }[/code][/quote]

Desculpe mais achei meio vago sua pergunda.

Sim é valido fazer uma comparação com um Booleano pois assim você vai compara ser e o valor esperado
pode-se fazer de 2 forma uma mais especifica ou menos especifica.

Mais especifica
exemplo ‘if(active == true)’ assim fica mais especifico, mais facil você bate o olho e identifica mais rápido que somente vai entra ser o valor for true.
ou assim ‘if(active != false)’ você já identifica de cara que active e um booleano e só vai entra ser for false.

Menos especifica
formas mais simplificadas ‘if(active)’ entra somente ser for verdadeiro
ou if(!active) entra somente ser for false.

Agora ser estive falando do && também é valido.
suponha que precise realizar uma consultar no banco de dados para isto precisa esta conectado ao banco, porem somente o administrador pode realizar,
neste caso pode ser que precise usar uma instrução mais ou menos assim.

if(conectouBD == true && usuarioAdm == true){// somente entra ser estive conectado ao BD e(&&) o usuário é um administrador //realize a consultar pois esta conectado ao BD e o usuario é um adm }

desculpe caso tenha interpretado mal.

Valeu galera! Era mais por uma questão de “limpeza” que eu fazia isso, mas vim perguntar aqui porque as vezes aparece alguém e diz: “NÃO FAÇA ISSO! SEU PROGRAMA VAI BUGAR!” … KKkkkk, mas como não veio ninguém! Valeu! :smiley:

Seu programa não vai bugar, mas sua mulher vai te abandonar, seu filho vai virar emo e você vai ficar careca e brocha de tanta praga que você vai receber de outros programadores.

Não faça isso porque é uma péssima prática! Nenhum programador gosta pois o código fica “sujo” e confusso.

Eu responderia o seguinte:

Siga as boas práticas, nada mais e nada menos.

O resto é igual time de futebol.