什么是星号变量,例如*arr
?
*arr = "sayuj"
=> ["sayuj"]
*arr = *%w{i am happy}
=> ["i", "am", "happy"]
*arr = %w{i am happy}
=> [["i", "am", "happy"]]
答案 0 :(得分:6)
它被称为splat运算符,它可以将元素收集到数组中(应用于未绑定的变量)或将数组拆分为单个元素(应用于数组)。
def bar(*a)
a[1]
end
bar(1,2,3)
=> 2
def foo(a,b,c)
b
end
foo(*[1,2,3])
=> 2
这有点过于简单,请阅读链接帖子以获取更深入的信息。