黑马程序员技术交流社区
标题:
问题:==与equals的区别
[打印本页]
作者:
liufeng2436_01
时间:
2016-4-23 12:42
标题:
问题:==与equals的区别
问题:==与equals的区别
作者:
小K哥
时间:
2016-4-23 18:14
==:可以比较基本类型和引用类型。基本类型比较的是值是否相同,而引用类型比较的是地址值是否相同。
equals:只能比较引用类型。默认情况下,比较的是地址值是否相同,但是我们可以根据自己的需要重写该方法。
作者:
xzy645181797
时间:
2016-4-23 20:41
==比较地址值
equals可以重写成比较内容
作者:
jiang0409
时间:
2016-4-23 21:03
==可以比较基本数据类型和引用类型,如果操作元相等而返回ture,
而equals()方法:如 public boolean equals(Object obj):当参数obj引用的对象与当前对象为同一个对象时,就返回ture,否则返回false。有时候根据需要,我们会重写该方法
作者:
liuqjss
时间:
2016-4-23 21:05
==:可以比较基本类型和引用类型。基本类型比较的是值是否相同,而引用类型比较的是地址值是否相同。
equals:只能比较引用类型。默认情况下,比较的是地址值是否相同,而String类重写了equals()方法,比较的是内容是否相同
String s1=new String("hello")创建了2个对象,一个是方法区的"hello",一个是堆中的new String,s1的地址值指向堆内存中的地址,
String s2="hello"就只在方法区中创建了一个“hello”对象,s2的地址值指向方法区中的地址
但是s1和s2的内容都是"hello"
System.out.println(s1==s2) false; System.out.println( s1.equals(s2)) true
作者:
忆々疯ラ萧萧
时间:
2016-4-23 22:31
== 比的是地址,equeal一般会重写 比较内容
作者:
菊花爆满山
时间:
2016-4-23 23:48
==比较地址值
equals可以重写成比较内容
作者:
林明辉
时间:
2016-4-24 00:05
大神真多
作者:
nc11111
时间:
2016-4-24 00:17
==比较的是地址值,equals是比较内容,
作者:
nc11111
时间:
2016-4-24 00:18
==比较的是地址值,equals是比较内容, String string="aa"; String string1="aa"; String string2=new String("aa"); System.out.println(string==string1); System.out.println(string==string2); System.out.println(string.equals(string1)); System.out.println(string.equals(string2)); true false true true
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2