将字符串列表转换为整数列表

时间:2021-01-17 18:04:44

标签: haskell

我有一个清单:

ls = ["1000", "2000", "4000", "8000"]

我想将以下列表转换为如下所示的字符串列表:

ls = [1000, 2000, 4000, 8000]

我尝试了以下方法,但没有用:

let val = (read ls :: Integer)

2 个答案:

答案 0 :(得分:4)

这是行不通的,因为您在这里使用 read 作为 list 字符串。您应该使用 map :: (a -> b) -> [a] -> [b] 将函数应用于列表的所有元素:

let val = map read ls :: [Integer]

答案 1 :(得分:3)

要将函数应用于列表每个成员,使用函数map :: (a -> b) -> [a] -> [b],该函数创建所述应用程序的结果列表。 >

那么你需要写

> let val = (map read ls :: [Integer])

> val
[1000,2000,4000,8000]
it :: [Integer]