有时候我想要一个变量永远是一个数组,无论它是一个标量还是已经是一个数组。强制标量或数组成为一个数组
所以我通常做:
[variable].flatten
这与红宝石1.8.5,1.8.7,1.9.x中兼容
使用此方法时,variable
是一个字符串(variable = "asdf"
),它给我["asdf"]
。如果它已经是一个数组(variable = ["asdf","bvcx"]
),它会给我:["asdf","bvcx"]
。
有没有人有更好的方法? “更好”意味着更可读,更高效,简洁或以其他方式更有效。
我不知道lucapette的方式,这似乎工作,但我上面显示的方式工作的速度大约是两倍。 – sawa 2012-03-11 13:22:01
在哪个实现? YARV? – 2012-03-11 20:53:17
@AndrewGrimm是的。 YARV在Ruby 1.9.3中。 – sawa 2012-03-11 22:10:02