我现在正在学习 Ruby 中的并行赋值运算符。当我尝试使用它来交换数组中的值时,我得到了意想不到的结果。无法在网上找到答案,希望有人能阐明这里发生的事情。
第一个例子:
array = [1,2,3]
=> [1, 2, 3]
array[0,1] = array[1,0]
=> []
array
=> [2, 3] #thought this would be = [2,1,3]
array[0] 去哪儿了,为什么 Ruby 不交换这些值?
第二个例子:
array = [1,2,3]
=> [1, 2, 3]
array[0,1] = [1,0]
=> [1, 0]
array
=> [1, 0, 2, 3] #was expecting [1,0,3]
为什么 Ruby 将右侧插入数组而不替换值?