我发现有一个||列表操作.什么||意思?有什么例子||吗?
lists:sum([A*B || {A, B} <- Foo]).
Run Code Online (Sandbox Code Playgroud)
Jon*_*nas 27
它用于List comprehensions.列表推导是一种创建列表的简短方法,无需使用乐趣,地图或过滤器.
从编程Erlang:
如果我们有一个清单L:
L = [1,2,3,4,5].
Run Code Online (Sandbox Code Playgroud)
我们希望将每个元素加倍,我们可以做到:
lists:map(fun(X) -> 2*X end, L).
Run Code Online (Sandbox Code Playgroud)
但是使用List理解我们可以做到:
[2*X || X <- L].
Run Code Online (Sandbox Code Playgroud)
spk*_*ira 11
命名法最有可能来自集合的数学概念,其中|| 意思是"这样".
例如从维基百科复制
F = {n2 - 4:n是整数; 和0≤n≤19}
在这种表示法中,冒号(":")表示"这样",并且描述可以解释为"F是形式n2-4的所有数字的集合,使得n是从的范围内的整数0到19,包括在内." 有时使用垂直条("|")代替冒号.
应用相同的东西
lists:sum([A*B || {A, B} <- Foo]).
Run Code Online (Sandbox Code Playgroud)
意味着: - 生成A*B,使得A和B属于元组列表"Foo"