可能重复:
了解范围和数组中的 ruby splat
谁能告诉我 * 在下面的代码中做了什么?
line = "name=yabbi;language=ruby;"
Hash[*line.split(/=|;/)]
谢谢。
可能重复:
了解范围和数组中的 ruby splat
谁能告诉我 * 在下面的代码中做了什么?
line = "name=yabbi;language=ruby;"
Hash[*line.split(/=|;/)]
谢谢。
*
是 splat 运算符。它用于将数组拆分为参数列表。
line.split(/=|;/)
返回一个数组。要创建哈希,数组的每个元素都必须作为单独的参数传递。
这是一个splat 运算符阅读它。当您想要拆分数组以用作函数的参数时,您经常会看到它被使用。