通常,当您想要一个柜台时,可以执行以下操作:
["a","b","c"].each.with_index(0) do |_case, i|
puts i
end
=> 0
=> 1
=> 2
我们从0开始递增。0在Ruby中表示为Fixnum
。
000在Ruby中也表示为Fixnum。但是我需要增加为000,001,002,003等。但是相反,它从000增加到1:
["a","b","c"].each.with_index(000) do |_case, i|
puts i
end
=> 0
=> 1
=> 2
我如何将000递增为001,002,003等?
答案 0 :(得分:0)
您可以使用格式化的打印功能printf
and sprintf
:
["a","b","c"].each_with_index { |_case, i| printf("%03d\n", i) }
000
001
002
答案 1 :(得分:0)
如果目标是打印带填充数字,那么Ruby可以使用字符串范围为您完成此操作。几种方法可以做到这一点:
puts ('001'..'005').to_a
或
('001'..'005').each { |n| puts n }
或
puts ('001'..'999').take(5)
所有打印:
#001
#002
#003
#004
#005