用ruby编写多维字符数组的更优雅的方法?

用ruby编写多维字符数组的更优雅的方法?,ruby,Ruby,我正在尝试用ruby制作一个多维字符数组,这是可行的,但是有没有更优雅的方法呢 def initialize(text) @map = Array.new i = 0 text.split("\n").each do |x| @map[i] = x.scan(/./) i += 1 end #@map = text end#constructor 将i重命名为n,增量n内联?映射在可枚举上定义。。。至少1.8.7,否则需要“后台端

我正在尝试用ruby制作一个多维字符数组,这是可行的,但是有没有更优雅的方法呢

def initialize(text)
    @map = Array.new
    i = 0
    text.split("\n").each do |x|
     @map[i] = x.scan(/./)
     i += 1
    end
    #@map = text
  end#constructor

将i重命名为n,增量n内联?
映射
可枚举
上定义。。。至少1.8.7,否则
需要“后台端口”
。还有另一种方法:
text.lines.map{uA}
@Marc,这使得'\n'的结果非常出色。我知道我说的太多了。Ruby可以很优雅,但你必须知道自己在做什么!
@map = text.lines.to_a.map { |s| s.chomp.split("") }
@map = text.split("\n").map{|x| x.scan(/./)}

#looks slightly better, needs at least 1.8.7
@map = text.lines.map{|x| x.scan(/./)}