This blog is part of our Ruby 2.4 series.

If we want to extract all the digits of an integer from right to left, the newly added Integer#digits method will come in handy.

`1 2567321.digits 3#=> [1, 2, 3, 7, 6, 5] 4 5567321.digits[3] 6#=> 7 7`

We can also supply a different base as an argument.

`1 20123.digits(8) 3#=> [3, 2, 1] 4 50xabcdef.digits(16) 6#=> [15, 14, 13, 12, 11, 10] 7`

#### Use case of digits

We can use Integer#digits to sum all the digits in an integer.

`1 2123.to_s.chars.map(&:to_i).sum 3#=> 6 4 5123.digits.sum 6#=> 6 7`

Also while calculating checksums like Luhn and Verhoeff, Integer#digits will help in reducing string allocation.