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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

"=="操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用"=="操作符。

equals方法是用于比较两个独立对象的内容是否相同,就好比去比较两个具体事物是否相同,它比较的两个对象是独立的。在实际开发中,我们经常要比较传递进行来的字符串内容是否相等,一定记住,字符串的比较基本上都是使用equals方法。

11 个回复

倒序浏览
还没学到,先了解一下
回复 使用道具 举报
我还发现数字可以跟字符用“==”,比如97=='a'
回复 使用道具 举报
“==”是比较两个对象的地址,equals是比较两个对象的内容 。
回复 使用道具 举报
阿加斯冬季 发表于 2015-10-5 14:14
我还发现数字可以跟字符用“==”,比如97=='a'

这个应该是自动类型提升吧!
回复 使用道具 举报
不错,学习了!
回复 使用道具 举报
阿加斯冬季 发表于 2015-10-5 14:14
我还发现数字可以跟字符用“==”,比如97=='a'

char会升为int来比较,也就是两个变量比较,所以用==可以
回复 使用道具 举报
对象:  
==  :比较的是两个对象的引用地址, 如果相等,内容一定相等。 如果不相等,内容可能会相等。
equals :qeuals是类中(如String)覆写Object.equals的方法。对于String来说,比较的是字符串内容是否相         同  。所以,如果要比较字符串是否相同,切忌用==

基本类型数据的话只能用  == 比较  ,比较的是值是否相等
回复 使用道具 举报
    == 比较的是值和地址值
    equals没有复写就用Object类中的equals方法,比较的是哈希码值,如果类中复写了equals方法,就用类中的。String,Integer等都复写了equals,但是实现的方法和功能需要查看API
回复 使用道具 举报
学习中。。。。。。。。。。。。。。。。。
回复 使用道具 举报
潘_洋 发表于 2015-10-5 17:00
这个应该是自动类型提升吧!

对,自动提升类型了
回复 使用道具 举报
邬jerry 发表于 2015-10-5 19:21
char会升为int来比较,也就是两个变量比较,所以用==可以

嗯嗯嗯 就是这样
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马