Ruby是什么是在循环中获取输入的懒惰方式

Siv*_*iva 1 ruby console

假设我想在循环中获得10个输入并将其存储在数组中.输入将是字符串或行或json字符串.

我知道Ruby的upto,gets.chomp但我正在寻找一种简单而懒惰的技术,如:

n=10
arr = []
loop(n) { arr.push getline }  #Just an example to share my thought. Will not work
Run Code Online (Sandbox Code Playgroud)

tor*_*o2k 5

不知道这是否"简单而懒惰":

irb> 3.times.collect { gets.chomp }
foo
bar
baz
# => ["foo", "bar", baz"]
Run Code Online (Sandbox Code Playgroud)