我们可以通过编写类似于以下方式的代码在Erlang中创建嵌套列表:
假设我们将它改写成这样:
NL = [[2,3], [1]].
[[2,3],[1]]
假设我们将它改写成这样:
OL = [[2,3]|1].
[[2,3]|1]
OL还是列表吗?能否请有经验的人更详细地解释一下OL是什么?
NL = [[2,3], [1]].
[[2,3],[1]]
OL = [[2,3]|1].
[[2,3]|1]
OL还是列表吗?能否请有经验的人更详细地解释一下OL是什么?
这被称为“不当列表”,通常不应使用。我认为大多数库函数期望正确的列表(例如,length([1|2])会抛出错误参数异常)。但是,使用不当列表进行模式匹配是可行的。
对于一些用例,请参见在 Erlang(也许所有函数式语言)中实际使用不当列表