Erlang--运算符

(一)Erlang运算符:

1、算术运算符:  +, -, *, /, div,  rem,

1、"/", 用于除,但是其结果永远是浮点数, 即不管是否整除

2、div, 除, 取结果的整数部分

3、rem,  取模

2、比较运算符: >, <, >=, =<,  ==,  =:=,  /= ,  =/=

1、=<, 小于等于

2、==, 比较两个值是否相等, eg:  1  == 1.0.   结果为:  true

3、=:=,   比较两个值是否相等,并且两个对象的类型也必须相等,  eg:  1 =:= 1.0.  结果为: false

4、/=,    不相等, eg:   1 /= 1.0.   结果为: false

5、=/=,  不全等, eg:  1 =/= 1.0,结果为: true

3、位运算符:band, bor, bnot, bxor, bsl, bsr

1、band, 位与

2、bor,   位或

3、bnot,  位非

4、bxor, 按位异或

5、bsl,   按位左移, eg:  1 bsl 5.   %将1左移5位,结果为32

6、bsr,   按位右移

4、逻辑运算符:(运算符两边的表达式都会计算)

1、not,   逻辑非

2、and,   逻辑与

3、or,    逻辑或

4、xor,  逻辑异或

5、短路逻辑运算符:(如果前部分能得出结果,就不会计算另一个表达式)

1、andalso , X andalso Y,  如果X为true,则会执行Y,如果X为false,则不会计算Y,直接false

2、orelse, X orelse Y, 如果X为true,则结果为true,不会计算Y

6、运算符优先级:

操作符 结合性
  1. #
  2. (一元)+, (一元)-, bnot, not
  3. /,  * , div, rem, band, and
  4. +, -, bor,  bxor,  bsl,  bsr, or, xor
  5. ++,   --
  6. ==, /=, =<, <, >=, =:=, =/=
  7. andalso
  8. orelse
  9. =

左到右

右到左,  即列表的操作,是将左边加到右边

右到左

时间: 2024-08-03 12:24:19

Erlang--运算符的相关文章

Erlang运算符

1)算术运算符 +:加 -:减 *:乘 /:除(结果为float类型) div:整除 rem:整除取余 注意最后的结果都是二进制 band是按位与运算 2#10 band 2#110. >> 2 bor是按位或运算 3#10 bor 2#100. >> 7 3#10先转为2#11 bxor是按位异或 2#10 bxor 2#11. >> 1 bsl按位左移 2#10 bsl 2 >> 8 2#1000 bsr按位右移 2#10 bsr 2 >>

简单谈谈Erlang的几种运算符

Erlang 有好几种运算符,比较运算符.数学运算符.布尔运算符,文章针对这几种运算符做讨论,参考erlang文档,以例子说明. Erlang的比较运算符 写法如下: Expr1 op Expr2 1> 1 == 1. true op Description == 等于 /= 不等于 =< 小于或等于 < 小于 >= 大于或等于 > 大于 =:= 恒等于 =/= 恒不等于 以=:=和==为例,说明恒等于和等于的区别: 2> 1 == 1.0. true 3> 1

当我们谈论Erlang Maps时,我们谈论什么 Part 2

声明:本文讨论的Erlang Maps是基于17.0-rc2,时间2014-3-4.兴许Maps可能会出现语法或函数API上的有所调整,特此说明. 前情提要: [Erlang 0116] 当我们谈论Erlang Maps时,我们谈论什么 Part 1 继续昨天的话题,在Erlang Factory SF Bay Area 2013有一个议题:"Where are we on the Map?" [PDF ],这个Talk基本上就是选取了EEP43的要点,有兴趣的同学能够FQ观看视频 W

Erlang 转至维基百科

Erlang(英语发音:/??rlæ?/)是一种通用的并行程序设计语言,它由乔·阿姆斯特朗(Joe Armstrong)在瑞典电信设备制造商爱立信所辖的计算机科学研究室开发,目的是创造一种可以应付大规模开发活动的程序设计语言和运行环境.Erlang于1987年发布正式版本,最早是爱立信拥有的私有软件,经过十年的发展,于1998年发表开放源代码版本. Erlang是运作于虚拟机的解释型语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)[2]开发的原生代码编译器,自R11B-4版本

Erlang基础 - 数据类型

Erlang数据类型很少,很容易掌握: 一.数值类型(整数和浮点数)       1.整数 整数大小事没有限制的,较小的整数会被存放在单个机器字长内,较大的整数会自动按需分配内存.所以根本就不存在溢出的问题. 示例: 101 -101 1234567890 * 987654321 * 999999999 另外,还可以使用2进制到36进制的整数,如:16#FF00,2#10101,36#ZZ. 还有,利用$前缀记法可以得到任意字符的数值编码(ascii/Latin-1/Unicode皆可) 如:$

Erlang学习笔记2

http://wgcode.iteye.com/blog/1007623 第二章 入门 1.所有的变量都必须以大写字母开头,如果要查看某个变量,只要输入变量的名字即可,如果一个变量被赋予值,就称为绑定变量,否则被称为自由变量,一开始所有变量都是自由的. 有一点像Java中的常量,这就是为什么用大写字母的原因. 2.  “=” 近似于一个赋值操作符,是一个模式匹配运算符,当X是自由变量未被赋值时“=”是赋值运算符,否则是模式匹配运算符. 3. “/”除号永远返回浮点数. 4. 原子用来表示不同的非

[python01] python列表,元组对比Erlang的区别总结

数据结构是通过某种方式组织在一起的数据元素的集合,这些数据元素可以是数字,字符,甚至可以是其他的数据结构. python最基本的数据结构是sequence(序列):6种内建的序列:列表,元组,字符串,Unicode字符串,buffer对象和xrange对象. 对比归纳:列表,元组在Erlang与python中的区别: 1. 通用操作: Python的列表更像是C中的数组,但是比那更灵活,和Erlang的列表大有不同. 1.1 python列表索引从0开始并可以是负数.可以使用 >>>nu

erlang note

没有关于erlang interface ,继续寻找吧... ----------------------------------------------------------------- http://wgcode.iteye.com/blog/1018614 第二章 入门 1.所有的变量都必须以大写字母开头,如果要查看某个变量,只要输入变量的名字即可,如果一个变量被赋予值,就称为绑定变量,否则被称为自由变量,一开始所有变量都是自由的. 有一点像Java中的常量,这就是为什么用大写字母的原

erlang 符号相关基本语法

http://blog.csdn.net/anghlq/article/details/6803332 ErLang语法约定: 大写字母开头的名字(比如Address),表示一个变量,包括参数.局部变量等: 小写字母开头的单词(比如ok),表示一个常量,叫做atom(原子的意思),包括常量名.函数名.模块名等. ErLang的注释用%开头.ErLang用下划线“_”表示任意变量,类似于Java的switch语法里面的default选项. 参数中没使用到的变量用下杠和首字母大写,如_Sample