映射組:是鍵—值對的關聯性集合。
記錄:是元組的另一種表示形式,它的存儲與性能特性和元組一樣。
記錄的語法形式:
-record(Name,{
%% 以下兩個鍵帶有默認值
key1 = Default1,
key2 = Default2,
%% 下面的key3就相當於 key3 = undefined
key3,
.....
}).
說明: Name:爲記錄的名稱,key1,key2爲記錄的各個字段必須爲原子。
記錄的定義可以保存在Erlang源代碼文件裏,也可以由擴展名爲.hrl的文件保存,然後包含在Erlang源代碼的源文件中。
注意: 文件包含是唯一能確保多個Erlang模塊共享相同記錄的定義方式。
記錄操作語法:
-record(todo,{status = remainder,who = joe,text}).
創建一個todo新記錄:#todo{key1 = val1,key2 = val2,key3 = val3,...}
X1#todo{status = done} 創建一個X1的副本,並修改字段status的值爲done,這樣做生成的是X1的一個副本,原始對象沒有改變。
提取記錄中的值:#todo{who = W,text = Txt} = X2.
如果只想獲取記錄中單個字段的值可以使用"點語法"來提取該字段值:X2#todo.text.
映射組:映射組的語法與記錄的語法相似,不同之處在於,映射組省略了記錄名,並且鍵—值分隔符是 =>或:=。
查詢映射組中某個鍵的值是一種高效率的操作。
映射組有着明確的順序。
映射組編寫語法:
#{key1 op val1,key2 op val2, key3 op val3, ...}.
op:爲=>或:=
注意:表達式 K => V 有兩種用途:一種是將K的值更新爲V,另一種是給映射組添加一個全新的K-V對,這個操作總是成功的。
表達式 K := V 的作用是將現有的值更新問新值V。
Erlang—記錄和映射組
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Erlang rpc函數初學
Edison
2018-08-27 18:53:23
Erlang防止同時註冊同一個進程
Edison
2018-08-27 18:53:17
Erlang併發程序模版
Edison
2018-08-27 18:53:17
Erlang開發建議(雜記版)
iteye_18554
2018-08-27 16:13:54
Erlang類型及函數聲明規格
iteye_18554
2018-08-27 16:13:53
inet:getstat/2小用法
iteye_18554
2018-08-27 16:13:53
Erlang定時任務server (仿crontab語法)
iteye_18554
2018-08-27 16:13:51
Erlang遊戲開發-協議
iteye_18554
2018-08-27 16:13:51
list random shuffle實現
iteye_18554
2018-08-27 16:13:51
用Erlang做了很多事
iteye_18554
2018-08-27 16:13:51
Gearman Erlang Client
iteye_18554
2018-08-27 16:13:51
Erlang進程之錯?
iteye_18554
2018-08-27 16:13:51
gen-erl-app快速生成erlang app 框架
iteye_18554
2018-08-27 16:13:51
erl-redis發佈
iteye_18554
2018-08-27 16:13:50
ECUG歸來
iteye_18554
2018-08-27 16:13:50