A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 习惯就好 中级黑马   /  2015-3-2 10:31  /  724 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

这两天学习String模块时对==和equal有些混,相信有很多新学员和我一样下面有个文档里面有详细的比较分享给大家:
equals 方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等,区分大小写。

==用于比较引用和比较基本数据类型时具有不同的功能:

比较基本数据类型,如果两个值相同,则结果为true

而在比较引用时,如果引用指向内存中的同一对象,结果为true

编辑本段基本用法

Eg:s1 = new String("sony"); //创建的是字符串对象

s1.equals("sony"); //返回true

s1 == "sony" //返回false

//如果

s1 = "sony";

s1 == "sony" //返回true

//如果

s1 = "sony";

s2 = "sony";

s1.equals(s2); 或者string.equals(s1,s2);//返回true

编辑本段equals方法的特点:

1、自反性:x.equals(x)返回true;

2、对称性:若x.equals(y)为true,则y.equals(x)亦为true;

3、传递性:若x.equals(y)为true且y.equals(z)也为true,则x.equals(z)亦为true;

4、一致性:x.equals(y)的第一次调用为true,那么x.equals(y)的第二次、第三次、第n次调用也均为true,前提条件是没有修改x也没有修改y;

5、对于非空引用x,x.equals(null)返回为false。


评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 赞一个!

查看全部评分

2 个回复

倒序浏览
学习学习~~~
回复 使用道具 举报
可以点评一下   谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马