Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
更新时间:2012年07月23日 23:11:09 作者:
如果要比较两个数,如果两个数之间是不同的类型,比如float和int那么,==操作会首先把两个数字转换成相同的相同类型
Erlang的比较运算符
opDescription==等于/=不等于=<小于等于<小于>=大于等于>大于=:=精确的等于=/=精确的不等于等于和精确等于的区别:
如果要比较两个数,如果两个数之间是不同的类型,比如float和int那么,==操作会首先把两个数字转换成相同的相同类型。举例:
1> 1==1.0.
true
2> 1=:=1.0.
false
所以一般推荐用精确等于去比较
比较运算符的大小级别:
number < atom < reference < fun < port < pid < tuple < list < bit string
3> 1 > a.
false
opDescriptionArgument type+
number-
number+
number-
number*
number/浮点数除法,结果是浮点数numberbnot一元not运算符integerdiv整数除法,结果是整数integerrem求玉树integerbandand运算integerboror运算integerbxorxor异或运算integerbsl左移位操作integerbsr右移位操作integer
逻辑运算符
opDescriptionnot一元逻辑notand逻辑andor逻辑orxor逻辑xor原子true 和false表示逻辑的”真”和”假”
此外,逻辑运算符还包括一个orelse 和andalso
原始的or和and是不带”短路运算”操作的,而orelse和andalso是带短路运算操作的。
短路运算举例
Express1 and Express2
Express1 andalso Express2
如果Express1 为假,and会继续判断Express2,然后整体判定为假,而andalso”短路”操作,直接判定整个表达式为假,从效率上来说,andalso会高一些
op Description
== 等于
/= 不等于
=< 小于等于
< 小于
>= 大于等于
> 大于
=:= 精确的等于
=/= 精确的不等于
Examples
> 1==1.0.
true
> 1=:=1.0.
false
> 1 > a.
false
注: 一般语言的 小于等于 是"<=" 而erlang的 "=<" 这样写
opDescription==等于/=不等于=<小于等于<小于>=大于等于>大于=:=精确的等于=/=精确的不等于等于和精确等于的区别:
如果要比较两个数,如果两个数之间是不同的类型,比如float和int那么,==操作会首先把两个数字转换成相同的相同类型。举例:
1> 1==1.0.
true
2> 1=:=1.0.
false
所以一般推荐用精确等于去比较
比较运算符的大小级别:
number < atom < reference < fun < port < pid < tuple < list < bit string
3> 1 > a.
false
opDescriptionArgument type+
number-
number+
number-
number*
number/浮点数除法,结果是浮点数numberbnot一元not运算符integerdiv整数除法,结果是整数integerrem求玉树integerbandand运算integerboror运算integerbxorxor异或运算integerbsl左移位操作integerbsr右移位操作integer
逻辑运算符
opDescriptionnot一元逻辑notand逻辑andor逻辑orxor逻辑xor原子true 和false表示逻辑的”真”和”假”
此外,逻辑运算符还包括一个orelse 和andalso
原始的or和and是不带”短路运算”操作的,而orelse和andalso是带短路运算操作的。
短路运算举例
Express1 and Express2
Express1 andalso Express2
如果Express1 为假,and会继续判断Express2,然后整体判定为假,而andalso”短路”操作,直接判定整个表达式为假,从效率上来说,andalso会高一些
复制代码 代码如下:
op Description
== 等于
/= 不等于
=< 小于等于
< 小于
>= 大于等于
> 大于
=:= 精确的等于
=/= 精确的不等于
Examples
复制代码 代码如下:
> 1==1.0.
true
> 1=:=1.0.
false
> 1 > a.
false
注: 一般语言的 小于等于 是"<=" 而erlang的 "=<" 这样写
相关文章
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
PHP 5 提供了一种新的面向对象的错误处理方法,包括PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法,需要了解更多的朋友可以参考下2012-12-12用js进行url编码后用php反解以及用php实现js的escape功能函数总结
这次第一次用smarttemplate这个模板,比smarty小巧了很多,但也有些不方便的地方。2010-02-02jQuery+PHP发布的内容进行无刷新分页(Fckeditor)
这篇文章主要介绍了jQuery结合,将Fckeditor发布的内容进行无刷新分页,需要的朋友可以参考下2015-10-10
最新评论