我开始学习ruby并试图找出一种方法,如果我有一个16个数字的数组,只使用每种方法一次打印这些数字4.我可以通过循环很容易地做到这一点,但我对Ruby中的每个方法都缺乏充分的理解,所以这给我带来了一些麻烦.
我有以下内容:
x=[*1..16]
index=0
x.each do |element|
puts element[index]
index=index+3
end
Run Code Online (Sandbox Code Playgroud)
现在显然这是完全错误的,我知道,但我想在这里放一些东西.一点建议会很棒.
谢谢
可能的解决方案:
a = (1..16)
a.each_slice(4) { |s| p s[3] }
Run Code Online (Sandbox Code Playgroud)
编辑:如果你想在一行上打印4个元素,然后跳到下一行并打印下面的4个元素等
a = (1..16)
a.each_slice(4) { |s| puts s.join(' ') }
Run Code Online (Sandbox Code Playgroud)
或仅使用每个
a = (1..16)
a.each { |i| print i.to_s + ' '; print "\n" if i % 4 == 0 }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
665 次 |
| 最近记录: |