首页 > 其他 > 详细

浅谈比较两个String是否相等的方法

时间:2016-02-04 01:54:47      阅读:223      评论:0      收藏:0      [点我收藏+]
  • 最近在review项目的代码的时候,发现有很多处比较String字符串是否相等的代码采取的是以下方式:(假设有2个String的变量str1、str2)

  1. str1.equals(str2)
  2. str1!=null && str1.equals(str2)

解析

  •         第1点是完全没有考虑str1为null的情况,当str1为1时,系统将抛出null point Execption,系统健壮性极差。

  •         第2点已经在考虑str1的为null的情况,代码不会出现异常,但整个项目可以会重复用到这条语句,故需考虑代码是否冗余。

建议

    在java.util.Objects中,已经封装好了如上面第二点的代码。具体的调用方式如下:

import java.utils.Objects;
.....
Objects.equals(str1,str2);

    Objects提供的静态equals方法,解释如下,如果str1和str2其中一个为null则返回false;如果2个都为null则返回true;当两者都不为null的情况下,调用str1中定义的equals方法,即str1.equals(str2)。

    优势显而易见,但是很多开发人员并不清楚utils包里面有封装该比较,故发此博文。



浅谈比较两个String是否相等的方法

原文:http://7348450.blog.51cto.com/7338450/1741028

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!