码迷,mamicode.com
首页 > 其他好文 > 详细

erlang -lists

时间:2015-05-18 16:58:29      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

ists:append([[1,2,3],[1,b],[3,4,5]]). 结果为 [1,2,3,a,b,3,4,5] 把多个列表合并成一个列表
lists:append("abc","sad"). 结果为 "abcsad" 合并
lists:concat([doc,‘/‘,file,‘.‘,3]). 结果为 "doc/file.3"
lists:delete(a,[s,a,f,a,d]). 结果为 [s,f,a,d] 删除列表中的第一个值等于a
lists:dupilicate(5,xx). 结果为 [xx,xx,xx,xx,xx]
lists:flatten([a,[b,c],[d,[e,f]]]). 结果为 [a,b,c,d,e,f]
lists:foldl(fun(X,Sum)->X+Sum end,0,[1,2,3,4,5]). 结果为 15 求和
lists:keydelete(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}]). 结果为 [{a,b,c},{a,a,a},{s,d}] 删除列表中第一个元组满足此元组中的第二个元子等于a
lists:keymember(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}]). 结果为 true 判断列表中有元组且此元组满足第二个元子等于a
lists:keysearch(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}]). 结果为 {value,{s,a,d}} 查找列表中有元组且此元组满足第二个元子等于a,没有返回false
lists:keyreplace(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}],{f,f}). 结果为 [{a,b,c},{f,f},{a,a,a},{s,d}] 替换满足条件的元组成{f,f}
lists:keymerge(1,[{a,b,c},{s,a,d}],[{a,a,a},{s,d}]). 结果为 [{a,b,c},{s,a,d},{a,a,a},{s,d}] 合并2列表,2列表中都是元组
lists:keysort(2,[{a,b,c},{s,a,d},{a,a,a}]). 结果为 [{s,a,d},{a,a,a},{a,b,c}] 按照列表中个元组的第二个元子大小排序
lists:keystore(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}],{f,f}). 结果为 [{a,b,c},{f,f},{a,a,a},{s,d}] 替换满足条件的元组成{f,f},如果没有满足条件的元组就把新元组加到列表最后一个,注意跟lists:replace的区别
lists:keytake(a,2,[{a,b,c},{s,a,d},{a,a,a},{s,d}]). 结果为 {value,{s,a,d},[{a,b,c},{a,a,a},{s,d}]} 注意跟lists:keysearch的区别
lists:last([a,b,c,d]) 结果为 d 取列表的最后一个
lists:map(fun(X)->X*2 end,[1,2,3]). 结果为 [2,4,6] 对列表中的每一个元组进行函数计算,得到新的列表
lists:mapfoldl(fun(X,Sum)->{2*X,X+Sum} end,0,[1,2,3,4,5]). 结果为 {[2,4,6,8,10],15}
lists:max([a,d,g,j,c]). 结果为 j 取列表中最大的一个值
lists:min([a,d,g,j,c]). 结果为 a 取列表中最小的一个值
lists:member(a,[s,a,d]). 结果为 true 判断列表中是否有特定的元子或元组
lists:nth(3,[a,d,g,j,c]). 结果为 g 取列表中的第三个值
lists:nthtail(3,[a,d,g,j,c]). 结果为 [g,j,c] 取列表中第三个值以后的值
lists:partition(fun(A)->A rem 2 == 1 end,[1,2,3,4,5,6,7]). 结果为 {[1,3,5,7],[2,4,6]} 过滤列表
lists:prefix([s,d],[s,d,f,g]). 结果为 true 判断前一列表是否为后一列表的前缀
lists:suffix([f,g],[s,d,f,g]). 结果为 true 判断前一列表是否为后一列表的后缀
lists:reverse([a,b,c,d,e]). 结果为 [e,d,c,b,a] 求列表的反序
lists:seq(1,10). 结果为 [1,2,3,4,5,6,7,8,9,10] 自动生成1-10得值
lists:seq(1,20,3). 结果为 [1,4,7,10,13,16,19] 自动生成1-20中差3的值
lists:sort([4,2,1,5,1,3]). 结果为 [1,1,2,3,4,5] 列表排序
lists:split(3,[a,b,c,d,f]). 结果为 {[a,b,c],[d,f]} 将原列表分割成2列表,第一个列表中包含原列表的头三个值
lists:splitwith(fun(A)->is_atom(A) end,[a,b,1,c,d,2,3,e]). 结果为 {[a,b],[1,c,d,2,3,e]} 分割列表,满足条件的为第一列表,直到第一个不满足条件为止
lists:sublist([a,b,c,d,f],3). 结果为 [a,b,c] 截取列表,注意跟lists:split的区别
lists:sublist([a,b,c,d,f],3,2). 结果为 [c,d] 截取列表,从第三个开始,截取2个
lists:sum(1,2,3,4,5). 结果为 15 求列表和
lists:zip([a,b,c],[d,e,f]). 结果为 [{a,d},{b,e},{c,f}]
lists:zipwith(fun(X,Y)->X+Y end,[1,2,3],[4,5,6]). 结果为 [5,7,9]

erlang -lists

标签:

原文地址:http://my.oschina.net/ffs/blog/416218

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!