gpt4 book ai didi

空字符串的 Java String hashCode

转载 作者:搜寻专家 更新时间:2023-11-01 01:00:01 25 4
gpt4 key购买 nike

唯一有趣的是,为什么 java.lang.String 中的 hashCode() 方法不是静态的?并且在 null 返回的情况下,例如-1?因为经常需要做一些事情,比如:

String s;
.............
if (s==null) {
return 0;}
else {
return s.hashCode();
}

谢谢。

最佳答案

正如其他人所指出的,hashCodeObject 上的一个方法,并且是非静态的,因为它本质上依赖(即属于)一个对象/实例。

注意 Java 7 引入了 Objects类,其中有 hashCode(Object)方法,它完全符合您的要求:如果 o 为非空,则返回 o.hashCode(),否则返回 0

此类还有其他处理可能为null 值的方法,例如equals(Object, Object) , toString(Object)和其他一些人。

关于空字符串的 Java String hashCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6981968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com