刚开始从Java迁移到Ruby的第2天。我的代码非常简单,我想打印9x9网格,但是当我通过嵌套for循环时,我无法创建新的行终止。请让我知道我在这里缺少什么,谢谢!
table = ""
for i in 1...10 do
for j in 1...10 do
table += j.to_s
end
table += "\n"
end
而且,结果如下:
2.1.0 :078 > table
=> "123456789\n123456789\n123456789\n123456789\n123456789\n123456789\n123456789\n123456789\n123456789\n"
答案 0 :(得分:4)
您只需要写为puts table
即可。请参阅方法Kernel#puts
table = ""
for i in 1...10 do
for j in 1...10 do
table += j.to_s
end
table += "\n"
end
puts table
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
以Ruby方式为例(9X9):
a = Array.new(9,[*1..9]).map(&:join)
puts a
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
# >> 123456789
查看文档: - Array::new
答案 1 :(得分:2)
看到红宝石的雄伟力量!
puts ([*1..9].join + "\n")*9