【Java】如何比较两个字符串

判断两个字符串是否相等,使用==,比较的是引用,使用equals比较的是值。

1. ==

我们比较两个字符串时,通常会惯性的写成   Str1==Str2,这种写法,并不能比较两个字符串的值,它比较的是两个字符串的地址。

String name1 = "aaa" ;
String name2 = "aaa" ;
if(name1 == name2){
    return true;
}else{
    return false;
}

这样比较的结果永远是True。因为相同的字符串在内存中只有一份,即只有一个地址。

2. equals

String name1 = "aaa" ;
String name2 = "bbb" ;
name1.equals(name2);

返回值为false;

String name1 = "bbb" ;
String name2 = "bbb" ;
name1.equals(name2);

返回值为true。


版权声明:本文为suzan_bingtong原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。