Uma dessas da unreacleble statement, qual?

11 respostas
balrog
  1. while (false) { x=3; }

  2. if (false) { x=3; }

  3. do{ x = 3; } while(false);

  4. for( int i = 0; i< 0; i++) x = 3;

11 Respostas

caiofilipini

while (false) { x = 3; } ??

balrog

exato !!

V

Eu também acho que é
while (false) { x = 3; }

if (false) { x=3; }
Porque o ifnão vai dar pq pode existir o else

do{ x = 3; } while(false);
O Do também não vai dar porque o bloco é executado antes de ser feito o teste condicional

for( int i = 0; i< 0; i++) x = 3;

e esse não é porque ele só testa a condicao do meio do if " i<0 " , poderia ser muito bem qualquer outra variavel ali dentro

int k = -1;
for(int i=0;k<0;i++) ;

Eu acredito que seja por isso

balrog
class  TestBool2

{

public static void main(String[] args)

{

boolean b1 = false;

boolean b2 = false;

if (b2 != b1 = !b2)       {

System.out.println(true);

}       else         {

System.out.println(false);

}
}

}

V

true!

balrog

amigo, eu tbm achei que fosse… cai na mesma armadilha que vc
tente novamente, e veja o que acontece

Frank

while (false) { x = 3; } !!
Falow.

caiofilipini

pq não dá true? a atribuição b1 = !b2 não acontece antes do teste de != ?

caiofilipini

dá erro de compilação! uma operação de atribuição não pode ser usada como teste booleano, não é isso?

wbsouza

O programa TestBool2 não compila “Syntax error on token “=”, “)” expected” no J2SDK 1.4.02. A versão correta deve ser …

class  TestBool2 &#123;
    public static void main&#40;String&#91;&#93; args&#41; &#123;
        boolean b1 = false;
        boolean b2 = false;
        if &#40;b2 != &#40;b1 = !b2&#41;&#41; &#123;
            System.out.println&#40;"true"&#41;;
        &#125;
        else &#123;
            System.out.println&#40;"false"&#41;;
        &#125;

    &#125;
&#125;

E a sua saída será “true”

[]s, Welington B. Souza

caiofilipini

O Welington tem razão. Quando compilei e executei o código, deu erro de compilação. E com a correção feita por ele, o programa mostrou “true”.

Criado 15 de julho de 2003
Ultima resposta 15 de jul. de 2003
Respostas 11
Participantes 5