【Erlang】十一、列表推导


列表推导

概念

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


格式

[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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值