加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 为什么是myString.equals(“aString”);不同于“aString

发布时间:2020-12-15 00:41:46 所属栏目:Java 来源:网络整理
导读:我曾多次听说使用boolean equals(Object o)来比较Strings,最好将常量放在函数的左侧,如下所示: Bad:myString.equals(“aString”); 好:“aString”.equals(myString); 为什么是这样? 解决方法 因为如果myString为null,则会出现异常.你知道“aString”永
我曾多次听说使用boolean equals(Object o)来比较Strings,最好将常量放在函数的左侧,如下所示:

> Bad:myString.equals(“aString”);
>好:“aString”.equals(myString);

为什么是这样?

解决方法

因为如果myString为null,则会出现异常.你知道“aString”永远不会为null,所以你可以避免这个问题.

通常你会看到使用nullSafeEquals(myString,“aString”)的库;到处都是为了避免这种情况(因为大多数时候你比较对象,它们不是由编译器生成的!)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读