数组的相等问题


0
混沌nn asked 4年 ago

(1,2).Equals((1,2))                                 怎么会是  False ?
$1=(1,2);  $2=$1;  $2.Equals($1)                    则是 True 。

×用微信扫描并分享
1 Answers
1
Best Answer
Mooser Lee 管理员 answered 4年 ago

你的两个例子很经典:
第一个虽然直观看,两个数字的元素相同,但是PowerShell解析器执行后,其实是生成两个数组,他们对应的引用不是同一块内存地址。
第二个则恰恰相反,第二个变量就是第一个变量的一个引用,所以相等。