你好 StackOverflow 工作人员!
我们正在做一些 Ruby,出现了一个我们似乎很难弄清楚的例子:
a=5
b=4
a,b=a+b,a
=> [9,5]
=> a=9
=> b=5
怎么会?那里发生了什么?为什么它起作用而“a,b,a”不起作用?为什么“b”变成5而“a”变成9?
如果我们只写
a,b=a+b
=> 9
=> a=9
=> b=nil
我们猜测这是某种 Ruby 错误,将在 2.5 版中修复。或者可能有一些基本的法律已经实施,我们只是还没有看到。
你们会帮助我们吗?
示例代码是斯坦福 Ruby 课程的一个测验问题的一部分。他们告诉我们在遇到困难时去问问 StackOverflow 天才。