从一个方法返回两个或更多值
问题描述:
有没有可能从方法返回多个值?像这样:
Is there any possibility to return multiple values from method? Something like this:
def someMethod()
return ["a", 10, SomeObject.new]
end
[a, b, c] = someMethod
答
def sumdiff(x, y)
return x+y, x-y
end
#=> nil
sumdiff(3, 4)
#=> [7, -1]
a = sumdiff(3,4)
#=> [7, -1]
a
#=> [7, -1]
a,b=sumdiff(3,4)
#=> [7, -1]
a
#=> 7
b
#=> -1
a,b,c=sumdiff(3,4)
#=> [7, -1]
a
#=> 7
b
#=> -1
c
#=> nil