6条回答
- Readiay 2017-01-07 02:39关注
每一个new出来的对象给给对象变量赋值时 都是一个新地址吗?
我肯定回答你:是的,每次都是一个新地址。在这里有点需要注意,对象是不是一样有两种比较方式,一种就是是不是同一个,一种就是是不是值相等。
是不是同一个,就是==号比较,例如:你有100块,我有100块,比较的两个对象是同一个物体 你用==比较就是false
== 比较的是内存中的地址是不是相同的,也就是你问的a与b的地址是不是相同,很显然不同,因为他们不是同一个。另外一种就是是不是值相同,例如你的键盘ikbc104c这个型号的,你同事也有一个ikbc104c型号的,
这两个是相同的,比较的值是不是相同的。就像你有100块,我有100块,我们的钱是一样多的。
这个使用equalse比较的,如果不覆盖,就是调用Object的equalse方法,比较内存是不是同一个地址。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 安卓adb backup备份应用数据失败
- ¥15 eclipse运行项目时遇到的问题
- ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
- ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
- ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
- ¥50 成都蓉城足球俱乐部小程序抢票
- ¥15 yolov7训练自己的数据集
- ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
- ¥15 电力市场出清matlab yalmip kkt 双层优化问题
- ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)