首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

==跟.equals() 的区别

2012-12-21 
和.equals() 的区别 和 .equals() 的区别经常混淆不少的程序员。查资料以后才发现了 是比较两个对象

==和.equals() 的区别
== 和 .equals() 的区别经常混淆不少的程序员。
查资料以后才发现了== 是比较两个对象的参考值但是e.equals() 是比较连个对象的意义或者内容。
简单的说 == 是一种表面比较,.equals()深得比较。



public class TestEquals {

public static void main(String[]args){
TestEquals test = new TestEquals();
test.f();
}
public void f(){

String str1 = "abcd";
String str2 = "abcd";
String str3 = new String("abcd");
if(str1 == str2){
System.out.println("== >>  OK啦!");
}else{System.out.println("== >>  不OK啦!");}
if(str1.equals(str2)){
System.out.println(".equals>>>  OK啦!");
}else{System.out.println(".equals>>>  不OK啦!");}
if(str2 == str3){
System.out.println("== >>  OK啦!");
}else{System.out.println("== >>  不OK啦!");}
if(str2.equals(str3)){
System.out.println(".equals>>>  OK啦!");
}else{System.out.println(".equals>>>  不OK啦!");}
}
}

引用

输出结构:

== >>  OK啦!
.equals>>>  OK啦!
== >>  不OK啦!
.equals>>>  OK啦!

热点排行