字符串 a, b: if(a.equals(b)), if(Objects.equals(a, b)) 还是 if(a..hashCode()==b.hashCode())?

亚历山大·萨文

什么更适合字符串 ( String a; String b;):if(Objects.equals(a, b))if(a.hashCode()==b.hashCode())?

我用于if(Objects.equals(a, b))Android API >= 19 和if(a.hashCode()==b.hashCode())Android API < 19,但我不记得为什么...

亚历山大·萨文

我用if(Objects.equals(a, b))而不是if(a.equals(b))因为检查

'String.equals()' 在国际化上下文中调用 报告String对象的任何equals()equalsIgnoreCase()compareTo()compareToIgnoreCase()调用在国际化环境中,此类调用通常是不正确的。

我用于if(a.hashCode()==b.hashCode())API < 19 而不是if(Objects.equals(a, b))因为检查

调用需要 API 级别 19(当前最小值为 14):java.util.Objects#equals

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章