1)算術運算符數組
+:加 -:減 *:乘 /:除(結果爲float類型) div:整除 rem:整除取餘 atom
注意最後的結果都是二進制spa
band是按位與運算 2#10 band 2#110. 》》 2rem
bor是按位或運算 3#10 bor 2#100. 》》 7 3#10先轉爲2#11string
bxor是按位異或 2#10 bxor 2#11. 》》 1it
bsl按位左移 2#10 bsl 2 》》 8 2#1000class
bsr按位右移 2#10 bsr 2 》》 0 效率
2)比較運算符二進制
1.比較運算符的大小級別::number < atom < reference < fun < port < pid < tuple < list < bit stringfloat
2.==等於 /=不等於 =<小於等於 <小於 >=大於等於 >大於 =:=精確的等於 =/=精確的不等於
等於和精確等於的區別:若是要比較兩個數,若是兩個數之間是不一樣的類型,好比float和int那麼,==操做會首先把兩個數字轉換成相同的相同類型。舉例:
1> 1==1.0.
true
2> 1=:=1.0.
false
3.列表是按照字典順序排列,就像是字典裏面的詞同樣.第一個元素先比較,而後第二個元素再次比較.
[a,b]<[d,e] True
[a,b]<[a,a] Flase
4.元素的比較是先比較元素的數目,而後在一個個比較各個元素
{a,b}<{a,b,c} True
{a,b}<{a,c} True
3)邏輯運算符
not:取反 and:全真爲真,一假爲假 or:一真爲真,全假爲假 xor:異或
andalso與and以及orelse與or的區別:
原始的or和and是不帶」短路運算」操做的,而orelse和andalso是帶短路運算操做的
短路運算舉例
Express1 and Express2
Express1 andalso Express2
若是Express1 爲假,and會繼續判斷Express2,而後總體斷定爲假,而andalso」短路」操做,直接斷定整個表達式爲假,從效率上來講,andalso會高一些
4)數組運算
最後還有個數組運算,++或者–,很簡單
1> [1,2] ++ [3,4].
[1,2,3,4]
2> [1,2] -- [3,4].
[1,2]
3> [1,2] -- [1,4].
[2]
4> [1,2] ++ [1,4].
[1,2,1,4]
5> [1,2] -- [1,2].
[]