Erlang 整数与浮点数转换、进制转换

Erlang 整数与浮点数的转换、数字之间的进制转换,浮点数改变精度等等这些功能,Erlang BIF(Erlang内建函数)已经帮我们很好实现,调用他们也很方便,下面将简单说明如何去使用他们。

erlang整数与浮点数转换

整数转浮点数:

% BIF函数
1> float(2).
2.0

% /转换
2> 2/1.
2.0

% math函数
3> math:pow(2,1).
2.0
浮点数转整数:
% 取整
4> trunc(2.9).
2

% 四舍五入
5> round(2.9).
3

erlang判断是否浮点数

6> is_float(1).
false

7> is_float(1.0).
true

erlang判断是否整数

8> is_integer(1).
true

9> is_integer(99999999999999999999999999).
true

10> is_integer(1.0).
false

erlang进制转换

Erlang BIF 提供了两个进制转换的函数,目前支持2进制到36进制:

11> integer_to_list(123, 2).
"1111011"
12> integer_to_list(123, 16).
"7B"
13> list_to_integer("1111011", 2).
123
14> list_to_integer("7B", 16).
123

其他相关内容:

% 浮点除法
15> 5 / 3.
1.6666666666666667

% 整数除法
16> 5 div 3.
1

% 整数求余
17> 5 rem 3.
2

erlang浮点数改变精度:

18> list_to_float(hd(io_lib:format("~.2f",[1/3]))).
0.33

参考:

http://blog.csdn.net/mycwq/article/details/17555463


你可能感兴趣的:(Erlang 整数与浮点数转换、进制转换)