合并/组合整数列表与Char [Haskell]

时间:2012-03-25 21:17:42

标签: list haskell integer char

我想知道如何应用这个功能:

dti xs = (map intToDigit (take 6 (map digitToInt xs))++['/']++map intToDigit(drop 6 (map digitToInt xs)))

在整数列表中,例如; [1234567822,3245336792,...],所以我得到的输出像[“123456/7822”,“324533/6792”,...]。

重点是在整数列表的每个数字的第6位后加一个“/”,例如; [1234567822,3245336792,...]。也许有比这更好的方法。

1 个答案:

答案 0 :(得分:2)

intToDigit需要一个数字,因此它会引起输入错误,如1234567822.

要将Int(或Integer)转换为字符列表,您可以使用show,然后将结果字符串拆分为六位数

format n = first ++ '/':second
  where
    s = show n
    (first,second) = splitAt 6 s

dti = map format