Duvida na seguinte situação do boolean

Galera eu estava comecando a estudar, ai cai na parte dos operadores relacionais a seguinte situação:

int valor = 2 boolean t = false t = (valor == 2); // t = true t = (valor != 2); // t = false t = (valor < 2); // t = false t = (valor <= 2); // t = true t = (valor > 2); // t = true t = (valor => 2); // t = true

não entendo uma coisa, o t me retorna se ele e verdadeiro ou falso dependendo da relação o operador, agora, porque declaro o t como false primeiramente?

É apenas uma inicialização da variável.

Normalmente inicializamos com o valor padrão do tipo primitivo, no caso do boolean é false, int é 0 e por aí vai.
Você poderia deixá-lo sem inicializar neste exemplo, não teria problema. Pode ocorrer um erro caso você não inicialize a variável e tente a utilizar sem definir um valor. Por exemplo:

boolean t; System.out.println(t);

[quote=fredericomaia10]É apenas uma inicialização da variável.

Normalmente inicializamos com o valor padrão do tipo primitivo, no caso do boolean é false, int é 0 e por aí vai.
Você poderia deixá-lo sem inicializar neste exemplo, não teria problema. Pode ocorrer um erro caso você não inicialize a variável e tente a utilizar sem definir um valor. Por exemplo:

boolean t; System.out.println(t);[/quote]

Não iria ocorrer nenhum erro nesse caso, “caso nao declarasse um valor inicial”,
por padrão qualquer tipo booleano inicializa com valor False…

Por que o programador quis fazer assim, assim como se vc quisesse iniciar como true vc inicia… valor de inicialização de variável não se discute é o programador que faz…

Nem todo, apenas propriedades tem seu valor inicializado automaticamente. Variáveis locais não.

Se você tentar rodar esse programa:

[code]import java.io.IOException;

public class Teste {
public static void main(String[] args) throws IOException {
boolean t;
System.out.println(t);
}
}
[/code]

Dará o erro de:

The local variable t may not have been initialized at Teste.main(Teste.java:6)

Nem todo, apenas propriedades tem seu valor inicializado automaticamente. Variáveis locais não.

Se você tentar rodar esse programa:

[code]import java.io.IOException;

public class Teste {
public static void main(String[] args) throws IOException {
boolean t;
System.out.println(t);
}
}
[/code]

Dará o erro de:

The local variable t may not have been initialized at Teste.main(Teste.java:6)[/quote]

Exatamente.

;]

Obrigado pessoal, entendi agora :3