Java:比较两个字符串是否相等

末蓝、 2024-02-25 05:58 81阅读 0赞

目录

    • 使用equals()方法(√)
    • 使用“ == ”运算符(×)
    • a.equals( “ “ )和” “.equals(a)

使用equals()方法(√)

  • 在Java中,可使用equals()方法来比较两个字符串是否相等。示例代码如下:

    String str1 = “hello”;
    String str2 = “world”;
    String str3 = “hello”;

    if(str1.equals(str2)){

    1. System.out.println("str1和str2相等");

    }else{

    1. System.out.println("str1和str2不相等");

    }

    if(str1.equals(str3)){

    1. System.out.println("str1和str3相等");

    }else{

    1. System.out.println("str1和str3不相等");

    }

输出结果为:

  1. str1str2不相等
  2. str1str3相等

使用“ == ”运算符(×)

  • 注意,使用“==”运算符比较两个字符串是否相等是不正确的,因为它比较的是两个字符串对象的引用地址,而不是字符串的内容。

a.equals( “ “ )和” “.equals(a)

  • 在Java中,a.equals(“ “)和” “.equals(a)的区别主要在于对于变量a的处理方式。
  • a.equals( “ “ ):这种写法假设a是一个字符串对象,调用了a对象的equals()方法来比较其内容与字符串” “是否相等。如果a是null,则会抛出NullPointerException异常,因为null对象不能调用方法。
  • “ “ .equals(a):这种写法是将字符串” “作为调用者,调用了字符串对象的equals()方法,用来比较其内容与变量a的内容是否相等。这种写法可以避免a为null时的异常情况,因为字符串对象的equals()方法会进行null检查。
  • 因此,推荐在比较字符串时使用” “.equals(a)的方式,特别是当你不能确定变量a是否为null时,这样可以避免发生空指针异常。

发表评论

表情:
评论列表 (有 0 条评论,81人围观)

还没有评论,来说两句吧...

相关阅读