将列表添加到列表列表的正面和背面

时间:2017-09-25 11:06:54

标签: haskell

实施例。我有一个列表,比如说[1,2,3],我想将它附加到列表列表中,所以它看起来像这样。

[[5,5,5],[6,6,6]] -> [[1,2,3],[5,5,5],[6,6,6],[1,2,3]]

我如何做到这一点?我不能做这样的事情

funk listOfList = [1,2,3] ++ listOfList ++ [1,2,3]

或者

funk [listOfList] = [[1,2,3], listOfList, [1,2,3]]

说实话,我不知道。

1 个答案:

答案 0 :(得分:5)

使用types总能让一切更加清晰:

funk :: [[Int]] -> [[Int]]
funk listOfList = [[1,2,3]] ++ listOfList ++ [[1,2,3]]

如果您对(++)使用[Int],结果也会是[Int],因此您实际上希望(++)使用[[Int]],因此您需要与[[1,2,3]]

一起使用