2 chen1030416518 chen1030416518 于 2018.10.11 23:00 提问

不同变量的值相等的时候 地址也相同

定义两个变量, 其值相等的时候,其地址也相等是为什么?

图片说明

图片说明

2个回答

caozhy
caozhy   Ds   Rxr 2018.10.11 23:56

你说的这个是简单类型,比如整数,python重写了相等判断的实现。
但是对于类的对象,即便每个成员都一样,也不相等。你试试就知道了

chen1030416518
chen1030416518   2018.10.12 09:56

c用习惯了,没考虑过py的内存机制,一直以为不同的变量就有不同的地址。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
相等的两个对象其中一个属性值修改,会影响另一个值;解决方法
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> &
数值相同的变量为何判断为不相等?
首先来看下面两段代码: data a; length x8 8 x4 6; retain x8 0.1 x4 0.1; run; data _null_; set a; put x8= x4=; if x8=x4 then put "Equal"; else put "Unequal"; run; 输出结果为: x8=0.1 x4=0.1 Unequal
Java常考面试题6 equals相同的对象对于的hashCode是否相等?
equals和hashcode的关系
python判断两个变量是否指向同一个对象
a = 5 b = 6 c = 6 print(a is b) # False print(a is c) # False print(b is c) # True print(id(a), id(b), id(c)) # 504911664 504911680 504911680
为什么C++中不同指针指向同一字符串,指针地址是相同的 ?
代码如下: #include  using namespace std;   int _tmain(int argc, _TCHAR* argv[]) {       char str1[] = "abc";     char str2[] = "abc";     const char str3[] = "abc";    
两个相等的数组,修改其中一个怎么做到不改变另外一个
现有 : let arrA = [1, 2, 3]; let arrB = arrA; console.log(arrA);//[1, 2, 3] console.log(arrB);//[1, 2, 3]1, 2, 3]; let arrB = arrA; console.log(arrA);//[1, 2, 3] console.log(arrB);//[1, 2, 3] 1. 如果改变...
4,关于判断两个变量相等的问题
(1)最常用的是==和equals,==多用于比较基本变量,equals是Object中的方法,判断两个对象是否具有相同的引用。但是他的子类可以根据自身实际情况进行覆盖,如String类中,==用来比较两变量内存地址是否相同,equals比较两变量内容是否相同;但是在别的未覆盖equals方法的类中,即使两对象内容完全相同equals比较的结果仍然是返回false.对于equals只要知道在比较字
Java的hashCode相同的字符串
 Java的hashCode相同的字符串: 39395重地1239395通话36025方面1746025树人17668儿女127668农丰127663氏1327663較習127662俗话说1227662宁可627660和玲玲227660米健腾1 
在使用hashmap时遇到不同key也会覆盖的问题
   在使用hashmap时发现很奇怪的情况,在put时,不同的key值也会出现覆盖的现象,从网上查了一些资料,整理如下:首先来看存储过程(Hashmap和Hashtable的存储过程估计相同):index = (o.hashCode() & 0x7FFFFFFF)%hs.length;这个值对象就会直接放在Hashtable的第index位置,如果是查询,经过同样的算法,Hashta
判断两个对象是否相等,hashcode和equals方法的联系
1、在集合中考虑两个对象是否相同的规则是: 第一步:如果hashCode()相等,则进行第二步,否则不相同。 第二步:查看equals()相等就相等,否则不相同 2、hashcode是对象或者变量通过哈希算法计算出来的hash值,不同对象是不一样的, 同一个对象是不变的。 3、equals()相等,hashcode一定相等 hashcode不相等,equals一定不相同 4、在重写类