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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

前几天基础班的老师讲到”==“这个符号时,说到一个问题。他说这个比较符判断的是两边元素的地址值,name问题来了:
       “2==5”,像这样的等式怎么判断?如果判断的是地址值,那2和5不都是在常量池中存放吗?怎么来判断他们相不相等?什么机制?求大神解惑~~~~

4 个回复

倒序浏览
没必要钻这牛角尖。。
回复 使用道具 举报
你意思是不求甚解呗。。。。
回复 使用道具 举报
它们在常量池中也有地址,所以地址不一样,对比的是引用地址,有时候值一样,它也不相等,要看这个值有没有在常量池中创建新地址,如果只是引用常量池中的地址,那么它和所有引用此地址的值都相等,反之则不相等,
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
kevin0 发表于 2017-5-25 19:50
它们在常量池中也有地址,所以地址不一样,对比的是引用地址,有时候值一样,它也不相等,要看这个值有没有 ...

也就是等号用来对比引用地址呗
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马