在 Elixir 中将十进制整数转换为十六进制

Ada*_*hip 5 hex elixir

我知道我们可以声明一个以 2、8、10 或 16 为基数的整数,例如:

0b10000
0o20
16
0x10
Run Code Online (Sandbox Code Playgroud)

所有结果都是整数16

但是给定一个整数,例如43981,我如何得到它的十六进制表示?

Ada*_*hip 8

使用Integer.to_string/2with16作为第二个参数。

Integer.to_string(43981, 16) # "ABCD"
Run Code Online (Sandbox Code Playgroud)

您还可以以相同的方式获得二进制和八进制表示:

Integer.to_string(43981, 2) # "1010101111001101"
Integer.to_string(43981, 8) # "125715"
Run Code Online (Sandbox Code Playgroud)