Erlang入门

Erlang中八中基本数据型:Integer,float,atom,reference,fun,port,pid,bitstring.
两种复合结构:tuple,list.

Erlang中一个重要概念:模式匹配。
X={aaa,"aaa"}.
{aaa,Y} = X.


变量单次赋值。一个变量一旦绑定某个值之后,就不能再次绑定.所有的变量必须以小写字母开头。

=号在Erlang中是一个模式匹配运算符,只有当X是一个自由变量的时候,=号的行为才与赋值一致。

Erlang中,整数运算没有误差,不必担心运算溢出。一个整数可以有三种方式来表示
1.传统语法
X=123.

2.K进制整数
X=K#Digits

3.$语法,表示ASCII字符的整数值
X=$A.


Erlang中的浮点数:
“/”永远返回一个浮点数,N div M 和 N rem M是用于整数的除与取模。
浮点数的范围:-10的323次方-10的323次方。

原子(atom):
atom是一个全局有效的常量,必须以小写字母开头,如果以大写字母开头必须用单引号括起来,一个原子的值就是原子本身。
X=atom.
Y='Atom'.


元祖(tuple):
将若干个以逗号隔开的值用一对花括号括起来,就形成了一个元祖。
X={person,"come.c",22}.

元祖中可以嵌套元祖。
在声明元祖的时候就创建了元祖,不在使用他们时,元祖也随之销毁,如果创建的元祖引用了一个已绑定的变量,那么新元祖也就会享有这个变量所引用的数据结构。当想从元祖中提取一些字段值的时候,就会用到模式匹配操作符“=”
Point={point,10}.
{point,R} = Point.
R.

R被绑定到值10.

列表(list):
将若干个以逗号隔开的值用一对中括号括起来,就形成了一个列表。
列表中的各个元素可以有各自不同的类型。
[1,"hello",come,{age,18}].

列表的第一个元素称为列表头,后面的称为列表尾,[1,2,3,4]这个列表中列表头是1,列表尾是[2,3,4],列表头可以是任何东西,列表尾还是一个列表。
如果T是一个列表,那么[H|T]也是一个列表,列表头是H,列表尾是T。
“|”可以将列表头和列表尾分开。
[]是一个空列表。

字符串:
严格来说,Erlang中没有字符串,字符串实际是一个整数列表。

命令f()能让shell释放掉所有绑定过的变量。
命令q()能够退出shell
命令halt()能够退出shell




你可能感兴趣的:(erlang)