ruby - 如何遍历整数的数字?

标签 ruby integer loops

<分区>

Possible Duplicate:
Turning long fixed number to array Ruby

好吧,我必须在 Ruby 中迭代整数的数字。现在我只是将它拆分成一个数组,然后对其进行迭代。但是我想知道是否有更快的方法来做到这一点?

最佳答案

最短的解决方案可能是:

1234.to_s.chars.map(&:to_i)
#=> [1, 2, 3, 4]

更正统的数学方法:

class Integer
  def digits(base: 10)
    quotient, remainder = divmod(base)
    quotient == 0 ? [remainder] : [*quotient.digits(base: base), remainder]
  end
end

0.digits #=> [0]
1234.digits #=> [1, 2, 3, 4]
0x3f.digits(base: 16) #=> [3, 15]

关于ruby - 如何遍历整数的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13091558/

相关文章:

ruby - 如何在 Ruby 中实现多态性

PHP 关联数组意外行为 - 为什么?

java - 如何将多维数组中的元素相加?

Python:循环遍历目录并使用文件名作为数据框名称保存每个文件

ruby-on-rails - 如何在 Rails 中干燥模型?

ruby - Scheduler 插件每月在 Heroku 上占用多少小时?

ruby - 如何检测客户端是否关闭 Rails 4.2 上的连接

javascript - 整数的 localeCompare

c++ - 如何使用字符串和整数获取汽车类的整数结果

C# 有意循环。 (CPU 使用率低)