在Erlang中创建列表列表

时间:2013-05-31 13:43:57

标签: list erlang

例如,我有一个列表[1,3,5]和另一个列表[2,4,6],如何以这种方式附加这两个列表,它将形成如下列表:[[1,3,5],[2,4,6]]

如果我在结尾[7,8,9]添加另一个列表看起来像[[1,3,5],[2,4,6],[7,8,9]],我该如何操作列表?

4 个答案:

答案 0 :(得分:5)

L1 = [1,3,5], 
L2 = [2,4,6],
[L1,L2].

答案 1 :(得分:5)

您只需创建一个包含两个列表的列表。

A = [1,3,5],
B = [2,4,6],
[A, B].

答案 2 :(得分:2)

-module(lol).
-export([new/0, append/2, head/1, tail/1]).

new() -> [].

append(H, []) when is_list(H) -> [H];
append(H, T) when is_list(H) -> [H | T].

head([H | _]) when is_list(H) -> H.
tail([_ | T]) -> T.

在shell中你可以:

> Herp = lol:append([1,3,4], lol:new()).
[[1,2,3]]
> Derp = lol:append([4,5,6], Herp).
[[4,5,6],[1,2,3]] 
> lol:head(Derp).
[4,5,6]

我把剩下的作为用户的练习。

答案 3 :(得分:-1)

1> [1,2,3 | [1,2,3]].
[1,2,3,1,2,3]
2> lists:append([1,2,3], [1,2,3]).
[1,2,3,1,2,3]