Cuando compilar y ejecutar este código:Java - Objeto instanceof nula se evalúa como verdadera y falsa
public class Testing {
public static void main(String... args) {
Object obj = null;
if (obj instanceof Object) {
System.out.println("returned true");
} else {
System.out.println("returned false");
}
System.out.println(" " + obj instanceof Object);
}
}
consigo esto en la línea de comandos:
C:\Users\xxxxxx\Desktop>java Testing
returned false
true
no debe "instanceof nula someType "siempre devuelve falso?
Un rompecabezas similares; ¿Cuándo es 'x + 0! = X'? Por cierto, espera que el '+' tenga una mayor precedencia. –
BTW: Podría haber sospechado cuando java imprimió true y no true –
Jonathan
Creo que el título es un poco erróneo, a menos que sea Java Quantum Edition y 'instanceof' haya devuelto un quboolean. –