Will null instanceof SomeClass
return false
or throw a NullPointerException
?
Answer
No, a null check is not needed before using instanceof.
The expression x instanceof SomeClass
is false
if x
is null
.
From the Java Language Specification, section 15.20.2, "Type comparison operator instanceof":
"At run time, the result of the
instanceof
operator istrue
if the
value of the RelationalExpression is
notnull
and the reference could be
cast to the ReferenceType
without raising aClassCastException
.
Otherwise the result isfalse
."
So if the operand is null, the result is false.
No comments:
Post a Comment