我有array = [1,2,3,4,5]
array.each do |e|
...
end
所以我需要像
一样输出它1
2
3
4
5
我该怎么做?(如何输出特定的顺序)
答案 0 :(得分:0)
假设您从1到array
得到了array.length
的int,并且您希望将第一个n
元素打印为0到n - 1
个空格,并且然后进入专栏。
例如,n = 3
和array = [1, 2, 3, 4, 5]
的输出将为
1 # 0 whitespaces
2 # 1 whitespace
3 # n - 1 whitespaces
4 # n - 1 whitespaces
5 # n - 1 whitespaces
打印该序列的代码是
arr.each { |e| puts ( (e <= n ? " " * (e - 1) : " " * (n - 1)) + e.to_s ) }
假设n > 0
。
答案 1 :(得分:0)
可能还要坚持下去:
array = [1,2,3,4,5]
#array.map(&:to_s).each_with_index { |value, index| puts value.rjust(index < 3 ? index+1 : 4) }
array.each_with_index { |value, index| puts value.to_s.rjust(index < 3 ? index+1 : 4) }