Aunque sé que, por definición, un booleano consta de solo dos estados, verdadero o falso. Me preguntaba qué valor tiene un booleano antes de inicializarse con uno de estos estados.¿Cuál es el tercer estado booleano en java?
Respuesta
Editar: Por demanda popular:
menos que esté utilizando el Boolean envuelto, que por defecto es nulo. - sudhir.j
En general, las variables de Java son predeterminadas a lo que los programadores de C pueden llamar valores "falsey", p. Ej. 0, nulo, falso, etc. – hbw
, a menos que esté utilizando Boolean envuelto, que se establece por defecto en nulo. –
@ sudhir.j absolutamente correcto. Espero que la respuesta sea editada para incluir eso. –
Si se trata de una variable local, es un error del compilador hacer referencia a ella antes de que se haya inicializado. Si es un campo, se inicializa a falso.
Igual va para los contenidos de la matriz –
En JAVA, los tipos booleanos son por defecto False.
No hay un tercer estado. Como @Yishai dijo, si no asigna un valor, los campos booleanos son por defecto falsos. Las variables locales deben ser asignados antes de su uso:
Acceso a una variable de inicializar locales dará lugar a un tiempo de compilación de error
Ver the doc.
Es falsa
Si había algo así como
boolean isTrue;
System.out.println(isTrue);
Debe obtener un error de tiempo de compilación porque el booleano no se ha inicializado. Por defecto, cuando intente inicializar esto, se establecerá en falso;
Sí, pero si boolean es una variable de instancia, su valor predeterminado es falso, sin advertencia. –
public class NewMain {
boolean foo;
Boolean bar;
public static void main(String[] args) {
NewMain obj = new NewMain();
obj.whatBoolean();
}
public void whatBoolean() {
System.out.println(foo);
System.out.println(bar);
}
}
salidas
false
null
Sé que esto era más filosófica de una pregunta, pero gracias a autoboxing puede utilizar Java como un lenguaje orientado a objetos casi de verdad (me gusta tener los tipos primitivos ... ahora sólo si funcionaría al revés también). Sin embargo, cambia el comportamiento cuando usa un objeto (para la mejor IMO).
FYI, booleano predeterminado a falso, los números primitivos predeterminados a 0, 0L, 0f o 0d según corresponda, char tiene como valor predeterminado '\ 0', referencias de objeto (como booleano) predeterminadas a nulas.
Esto también se aplica al contenido de las matrices. (Un problema común es que una matriz de Objetos está inicialmente llena de valores nulos)
- 1. ¿Cuál es la diferencia entre booleano y booleano en Java?
- 2. En Java, ¿cuál es el "orden de operaciones" booleano?
- 3. ¿Cuál es el tercer valor en el relleno de CSS?
- 4. Cuál es el tamaño de booleano GLSL
- 5. ¿Cuál es el estado actual de los cierres en Java?
- 6. ¿Cuál es el estado de JMX 2.0?
- 7. ¿Cuál es el estado de los superpaquetes de Java?
- 8. ¿Cuál es el estado de JSR 305?
- 9. ¿Cuál es el estado actual de AspectJ?
- 10. ¿Cuál es el valor booleano predeterminado en C#?
- 11. ¿Cuál es el estado actual de GWT?
- 12. booleano [] vs. BitSet: ¿Cuál es más eficiente?
- 13. ¿Cuál es el estado de Spring.Net?
- 14. ¿Cuál es el estado de tcl_precision?
- 15. ¿Cuál es el estado del lenguaje Javascript?
- 16. ¿Cuál es el estado de PHPDoc?
- 17. ¿Cuál es el estado de CAT.NET?
- 18. ¿Cuál es el estado de #resource ('main.css') en el dardo
- 19. ¿Cuál es la forma más concisa de obtener el inverso de un valor booleano de Java?
- 20. Campo booleano mutable en Java
- 21. Encontrar el tercer punto
- 22. ¿Cuál es el estado de la programación multinúcleo en Haskell?
- 23. ¿Cuál es el estado actual de BDD en C++?
- 24. ¿Cuál es el estado actual de la técnica en látex?
- 25. ¿Cuál es el estado de los rangos en C++?
- 26. ¿Cuál es el estado actual del desarrollo de GWT?
- 27. ¿Cuál es el controlador en Java Swing?
- 28. ¿Cuál es el operador & = para en Java
- 29. ¿Cuál es el propósito de las instrucciones de cambio booleano en JavaScript?
- 30. seleccionar solo el tercer li
El tercer estado booleano suele ser FileNotFound. – Brian
@Brian, ¿eso no depende de si implementa Paula Bean? –
@Paul: cuando no estás observando, no existe. La función cuántica se colapsa solo cuando abre la puerta: D – talonx