use*_*818 4 java string null static
唯一有趣的是,为什么java.lang.String中的方法hashCode()不是静态的?如果返回null,例如-1?因为经常需要做一些像:
String s;
.............
if (s==null) {
return 0;}
else {
return s.hashCode();
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
Joa*_*uer 15
正如其他人所指出的那样hashCode,方法Object是非静态的,因为它本身依赖(即属于)对象/实例.
请注意,Java 7引入了Objects具有该hashCode(Object)方法的类,该方法完全符合您的要求:o.hashCode()如果o为非null,0则返回.
该类还有其他处理可能null值的方法,例如equals(Object, Object),toString(Object)和其他一些方法.