ruby - Ruby 中加星标的变量是什么?

标签 ruby arrays splat

*arr 之类的带星号的变量是什么?

*arr = "sayuj"
=> ["sayuj"]

*arr = *%w{i am happy}
=> ["i", "am", "happy"]

*arr = %w{i am happy}
=> [["i", "am", "happy"]]

最佳答案

它叫做 splat运算符,它可以将元素收集到数组中(应用于未绑定(bind)变量)或将数组拆分为单个元素(应用于数组)。

def bar(*a)
  a[1]
end

bar(1,2,3)
=> 2

def foo(a,b,c)
  b
end

foo(*[1,2,3])
=> 2

这有点过于简单了,请阅读链接的帖子以获取更深入的信息。

关于ruby - Ruby 中加星标的变量是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8188644/

相关文章:

ruby - 将 Paypal 与 Ruby 集成的最佳方式

ruby-on-rails - 文件上传 Mailboxer Gem

c++ - 使用数组实现四叉树

javascript - 使用ajax将多维数组数据发送到php脚本

python - 在 Python 中创建基于文本的游戏。如何检查用户输入?

ruby - 如何使用 sublime text 调试 Rails 应用程序 Ruby 2.1.3、Rails 4

ruby-on-rails - 错误:执行 gem 时 ...(Gem::Exception)OpenSSL 不可用

javascript - 怀疑范围问题

javascript - splat over JavaScript 对象(使用 new)?

ruby - Ruby 中使用的独立 splat 运算符 (*) 是什么?