package test;
import java.util.Objects;
/**
* 关于字符串比较的方法进行建议。
* (1)"abc".equals(xxx)
* (2)对象x.equals(xxx)
* (3)Objects.equals(xx,xx)
*/
public class StringEquals {
public static void main(String[] args) {
/**
* "abc".equals(xxx):通过字符串直接调用equals,如果参数为null,返回false即可, 不会抛异常
*/
System.out.println("abc".equals(null));
System.out.println("abc".equals("abc"));
/**
* 对象x.equals(xxx),如果调用equals方法的对象为null,那么会抛异常
*/
String str1 = null;
//str1.equals("bbc");
/**
* Objects.equals(xx,xx):
* (1)无论两个参数是否为null,都不会抛异常
* (2)如果两个参数都为null或者两个对象参数一模一样,返回true
* (3)如果其中一个参数为null,返回false
* (4)否则,将使用第一个参数的equals方法确定相等性。
*/
System.out.println(Objects.equals(str1,null));
}
}
综上所述,搭建选择适合自己的方法即可,这里仅作科普和参考。
关于字符串比较的方法进行建议
字符串比较全解析
最新推荐文章于 2023-11-06 17:41:50 发布
本文深入探讨了三种字符串比较方法:直接使用字符串调用equals方法、对象调用equals方法及使用Objects.equals方法。详细分析了每种方法在面对null参数时的行为差异,帮助读者理解并选择最合适的比较方式。
737

被折叠的 条评论
为什么被折叠?



