简单说就是数值相同,但是地址相同和不同的区别,举例说明:
public class Test {
public static void main(String[] args){
Test a = new Test();
System.out.println(a.isRight());
System.out.println(a.isWrong());
}
public boolean isRight(){
String str1 = "abc";
String str2 = "abc";
if(str1.equals(str2))
return true;
return false;
}
public boolean isWrong(){
String str1 = new String("abc");
String str2 = new String("abc");
if(str1.equals(str2))
return true;
return false;
}
}
打印结果true,true 如果将equals换成“==”,结果就是true ,false
Java中String比较:equals与==的区别
博客主要介绍了Java中String比较时,数值相同但地址不同的情况。通过代码示例展示了使用equals和“==”进行比较的差异,使用equals比较时结果都为true,而使用“==”比较时结果为true和false。
31万+

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



