如何将List添加到另一个列表,返回列表列表?
foo :: [a] -> [a] -> [[a]]
例如,我想要的结果:
foo [1,2] [3,4]
将是[[1,2], [3,4]]
。
++
无效:
*Main> [1,2] ++ [3,4]
[1,2,3,4]
答案 0 :(得分:10)
当然这会起作用吗?
foo :: [a] -> [a] -> [[a]]
foo a b = [a, b]
答案 1 :(得分:7)
你自己几乎写下了问题的答案,这有点好笑:
foo [1,2] [3,4] 会是[[1,2],[3,4]]。
现在,您需要做的只是从具体的示例值中抽象出来!例如,将[1,2]
替换为a
,将[3,4]
替换为b
。然后你可以告诉Haskell你想要
foo a b = [a,b]
就是这样!虽然它的类型比你想要的更通用。