java中常用的字符串的比较方法(两种)

时间:2022-04-14 02:11:13

比较字符串比较常用的两个方法是运算符“=”和String的equals方法。

使用“=”比较两个字符串,是比较两个对象的的“地址”是否一致,本质就是判断两个变量是否指向同一个对象,如果是则返回true,否则返回的是false。而String类的equals方法则是比较两个字符串的内容是否一致,返回值也是一个布尔类型。

看下面的代码:

java" id="highlighter_445590">
?
1
2
3
4
5
6
7
8
9
10
11
12
public class TestString{
  public static void main(String[] args){
   String str1 = "张三";
   String str2 = "张三";
   System.out.println(str1 == str2); //返回true
   System.out.println(str1.equals(str2)); //返回true
   String str3 = new String("李四");
   String str4 = new String("李四");
   System.out.println(str3 == str4); //返回false
   System.out.println(str3.equals(str4)); //返回true
 }
}

结果输出:

java中常用的字符串的比较方法(两种)

从上面的代码也可以看得出来,通过String str = " XXX"方式和通过String str = new String("XXX")方式创建的字符串在计算机堆栈空间里的存储是不一样的

现在我也是一个小白,对堆栈空间的理解现在也不是很到位,所以在这里也不好说其中的“玄机”。今天主要是想分享学习到的两种常见的字符串比较方法。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持服务器之家!

原文链接:http://www.cnblogs.com/Mus-Li/p/6540057.html