【Erlang】十一、列表推导

tech2024-10-14  10

文章目录

列表推导概念格式例子例1例2


列表推导

概念

使用特定的 列表格式 来处理列表


格式

[F(X)|| X <- L] [F(X)|| X <- L, X > 0]

L 待处理的列表 X 列表中的一个元素 F 对X的处理函数 X > 0 是否处理列表元素的判断。如果X小于等于0,跳过处理


例子

例1

已知列表[1,2,3,4,5],得到每个元素乘以2后的新列表

%% 纯数字组成的数组 > List = [1,2,3,4,5]. [1,2,3,4,5] %% 列表中的每一个元素 乘以 2,得到一个新的数组 > List2 = [2 * X || X <- List]. [2,4,6,8,10]

例2

所有商品同样再买一份,所有元素的数量 * 2

%% 购买的商品列表 > List = [{apple, 2}, {milk, 1}, {book, 1}]. [{apple, 2}, {milk, 1}, {book, 1}] %% 每样商品多再多拿一倍,同理处理列表中的元素也可以通过模块/内置/匿名的函数进行处理 > List2 = [ {ItemName, ItemNum * 2} || {ItemName, ItemNum} <- List ]. [{apple,4},{milk,2},{book,2}]
最新回复(0)