變量
變量都是大寫(xiě)開(kāi)頭
在 erlang 中,變量都是大寫(xiě)開(kāi)頭,如X, Name,而不像 python,java,C 等命令式語(yǔ)言,可以采用小寫(xiě)字符作為變量。
1> X = 56.
56
2> Name = "Marco".
"Marco"
3> weather = "wind".
** exception error: no match of right hand side value "wind"
4>
賦值與匹配
在 erlang 中符號(hào)=既可以表示賦值,也可以表示匹配。當(dāng)=第一次作用于變量,給變量綁定了值,此后=作用于變量的時(shí)候,會(huì)被解析為模式匹配。
如下代碼所示,Y = 34.中的=為賦值,而Y = 24.中的=則為模式匹配操作符。因?yàn)樽兞?code>Y已經(jīng)獲得值34,所以變量Y不能再獲得值綁定,=再次作用于Y的時(shí)候,會(huì)被解析為模式匹配,如下Y和24匹配失敗,而Y = 24+10.則匹配成功,因?yàn)?code>=右邊的值與變量的值相等。
4> Y = 34.
34
5> Y = 24.
** exception error: no match of right hand side value 24
6> Y = 24+10.
34
7>
Erlang的變量不會(huì)變
erlang中變量一經(jīng)綁定,不會(huì)再變。如下所示:
7> City = "ShangHai".
"ShangHai"
8> City = "Beijing".
** exception error: no match of right hand side value "Beijing"
9>
原子
概念
erlang中,原子被用于表示常量值。
在erlang里,原子是全局性的,不用宏定義或包含文件就能實(shí)現(xiàn)。
原子以小寫(xiě)字母開(kāi)頭,后接字母、數(shù)字、_或@符號(hào),如red、weather、student_a、joe@somehost.
原子也可以放在單括號(hào)'內(nèi),例如'teacher'、'Monday'、'+'、'a cat'.
一個(gè)原子的值就是它本身。如下所示:
9> hello.
hello
10> 'Monday'.
'Monday'
11> 'a cat'.
'a cat'
12>