Erlang 学习笔记

=操作符

在这里插入图片描述
=不是一个赋值操作符,它实际上是一个模式匹配操作符。
Erlang的变量只能绑定一次。绑定变量的意思是给变量一个值,一旦这个值被绑定,以后就不能改动了。

变量和原子的语法

请注意Erlang的变量以大写字母开头。所以X、This和A_long_name都是变量。以小写字母
开头的名称(比如monday或friday)不是变量,而是符号常量,它们被称为原子(atom)。
在这里插入图片描述

文件服务器

在两台机器之间传输文件
第一台机器上运行的客户端和第二台机器上运行的服务器
在这里插入图片描述
在这里插入图片描述
Erlang编译器和运行时系统会正确推断出如何在收到消息时运行适当的代码。不需要编写任何的if-then-else或switch语句来设定该做什么。这是模式匹配带来的乐趣之一,会为你节省大量工作。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
FileServer = alfile_server:start(“.”)
alfile_server:start(Dir)调用spawn(afile_server, loop, [Dir])。这就创建出一个
新的并行进程来执行函数afile_server:loop(Dir)并返回一个进程标识符,可以用它来与此进
程通信。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
已被指派一个值的变量称为绑定变量,否则称为未绑定变量。
在这里插入图片描述

浮点数

在这里插入图片描述

元组

如果想要表示某人的名字和身高,就可以用{joe, 1.82}。这个元组包含了一个原子和一个浮点数。
要创建一个“坐标点”P = {10,45},创建了一个元组并把它绑定到变量P上。为了更容易记住元组的用途,原子作为元组的第一个元素{point, 10, 45}而不是{10, 45}

创建元组

在这里插入图片描述

提取元组

在这里插入图片描述
在这里插入图片描述

列表

列表(list)被用来存放任意数量的事物
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

字符串

如果列表内的所有整数都代表可打印字符,它就会将其打印成字符串字面量
在这里插入图片描述
在这里插入图片描述

模块

模块是Erlang的基本代码单元。模块保存在扩展名为.erl的文件里,而且必须先编译才能运
行模块里的代码。编译后的模块以.beam作为扩展名。
在这里插入图片描述

fun

在这里插入图片描述
在这里插入图片描述

以fun作为参数的函数

在这里插入图片描述

返回fun的函数

在这里插入图片描述

->() 括号里面的代表函数的返回值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

列表推导

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建和更新记录

在这里插入图片描述

提取记录字段

在这里插入图片描述

在函数里模式匹配记录

在这里插入图片描述

映射组

映射组的写法依照以下语法:
#{Key1 Op Val1,Key2 Op Val2,…,KeyN Op ValN}
它的语法与记录相似,但是散列符号(即#)之后没有记录名,而Op是=>或:=这两个符号的其中一个。
在 Erlang 中,映射(Map)是一种键值对的数据结构。您可以在函数中使用模式匹配来操作和处理映射。以下是一个示例:
在这里插入图片描述

模式匹配映射组字段

在Erlang代码里,变量D1和D2不会改变它们的初始值。D2的表现就像是对D1做了深层复制①一样。事实上,深层复制并没有发生,Erlang系统只复制了内部结构里的某些必要部分,以形成创建了复制物的假象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值