用一行交换数组

时间:2011-09-15 04:09:33

标签: ruby-on-rails ruby swap

我知道这是一个非常愚蠢的问题。但是,我非常渴望知道如何在一行中交换元素。

例如:

a, b = 1, 2

我需要这样的答案

a, b = 2, 1

3 个答案:

答案 0 :(得分:5)

a,b = b,a    # does work....

irb(main):017:0* a, b = 1, 2
=> [1, 2]
irb(main):018:0> a
=> 1
irb(main):019:0> b
=> 2
irb(main):020:0> a, b = b,a
=> [2, 1]
irb(main):021:0> a
=> 2
irb(main):022:0> b
=> 1
irb(main):023:0>

答案 1 :(得分:1)

你说你想要在标题中交换一个数组,但不是在你的例子中。我带着头衔,所以......

x = [1,2,3,4,5]
x.reverse!
=> [5,4,3,2,1]

你也可以这样做......我猜......

a, b = 1, 2
a, b = b, a

答案 2 :(得分:-2)

我认为你可以做到

array[0, 1] = array[1, 0]
相关问题