Ruby:如何跨多行初始化数组

时间:2009-12-27 07:09:57

标签: ruby syntax

我有一个小的Ruby脚本,其中一个数组被初始化以保存一些字符串

MyArray = ["string 1", "string 2" , "string 2" ]

问题是我在初始化列表中有很多字符串,我想打破这一行:

MyArray = [
            "string 1"
           ,"string 2" 
           ,"string 2"
          ]

但Ruby标记了此格式的语法错误 我尝试在每行的末尾添加“\”而没有任何成功。

如何在Ruby中完成?

4 个答案:

答案 0 :(得分:49)

MyArray = %w(
    string1 
    string2 
    string2
)

答案 1 :(得分:35)

你想把逗号放在像这样的项目之后

myarray = [
  "string 1",
  "string 2",
  "string 3"
]

此外,如果您可能正考虑将逗号放在项目之前,那么在您编写代码时可以轻松评论或类似。你可以留下一个悬挂的逗号,没有真正的不良副作用。

myarray_comma_ended = [
  "test",
  "test1",
  "test2", # other langs you might have to comment out this comma as well
  #"comment this one"
]

myarray_no_comma_end = [
  "test",
  "test1",
  "test2"
]

答案 2 :(得分:9)

在多行中创建数组的另一种方法是:

myArray = %w(
   Lorem 
   ipsum 
   dolor
   sit
   amet
)

答案 3 :(得分:1)

MyArray = Array.new(
            "string 1"
           ,"string 2" 
           ,"string 2"
          )