Ruby Array Issue - 无法将String转换为Integer

chi*_*ain 2 ruby ruby-1.9.3

无法理解这个问题

nameTag = "div[class='designer_about'] a"
designsTag = "li[class='span-2']"
pullTags = Array.new(nameTag, designsTag)
Run Code Online (Sandbox Code Playgroud)

错误:

designers_list_mirraw.rb:8:in `initialize': can't convert String into Integer (TypeError)
from designers_list_mirraw.rb:8:in `new'
from designers_list_mirraw.rb:8:in `<main>'
Run Code Online (Sandbox Code Playgroud)

我是红宝石的新手

Cap*_*Six 25

正如juanpastas所提到的,Array::new(size,obj)期待一个数字和一个对象.您可以在链接到的教程中看到这一点:

names = Array.new(4, "mac")
Run Code Online (Sandbox Code Playgroud)

names现在是一个有"mac"四次的数组.

如果您打算使用以下两项创建数组:

pullTags = Array.[nameTag, designsTag]
# which is equivalent to
pullTags = Array[nameTag, designsTag]
# which are the more verbose versions of
pullTags = [nameTag, designsTag]
Run Code Online (Sandbox Code Playgroud)

[](*args).