Erlang学习笔记--变量与原子

变量

变量都是大写开头

在 erlang 中,变量都是大写开头,如X, Name,而不像 python,java,C 等命令式语言,可以采用小写字符作为变量。

1> X = 56.
56
2> Name = "Marco".
"Marco"
3> weather = "wind". 
** exception error: no match of right hand side value "wind"
4> 

赋值与匹配

在 erlang 中符号=既可以表示赋值,也可以表示匹配。当=第一次作用于变量,给变量绑定了值,此后=作用于变量的时候,会被解析为模式匹配
如下代码所示,Y = 34.中的=为赋值,而Y = 24.中的=则为模式匹配操作符。因为变量Y已经获得值34,所以变量Y不能再获得值绑定,=再次作用于Y的时候,会被解析为模式匹配,如下Y24匹配失败,而Y = 24+10.则匹配成功,因为=右边的值与变量的值相等。

4> Y = 34.
34
5> Y = 24.
** exception error: no match of right hand side value 24
6> Y = 24+10.
34
7> 

Erlang的变量不会变

erlang中变量一经绑定,不会再变。如下所示:

7> City = "ShangHai".
"ShangHai"
8> City = "Beijing". 
** exception error: no match of right hand side value "Beijing"
9> 

原子

概念

erlang中,原子被用于表示常量值
在erlang里,原子是全局性的,不用宏定义或包含文件就能实现。
原子以小写字母开头,后接字母、数字、_@符号,如redweatherstudent_ajoe@somehost.
原子也可以放在单括号'内,例如'teacher''Monday''+''a cat'.
一个原子的值就是它本身。如下所示:

9> hello.
hello
10> 'Monday'.
'Monday'
11> 'a cat'.
'a cat'
12> 

你可能感兴趣的:(Erlang学习笔记--变量与原子)