String Haskell,从整数集中生成单个字符串?

String Haskell,从整数集中生成单个字符串?,string,haskell,count,int,range,String,Haskell,Count,Int,Range,如果您能告诉我如何在两个整数之间生成一个字符串,我将不胜感激。比如[5..10]我需要一个“5678910”。然后我必须计算一个字符串中有多少(零,一…九) 例如:如果我有[1..10]的范围,我需要打印出来 1 2 11 11 现在我只有一个函数来搜索字符串中的元素 `countOfElem elem list = length $ filter (\x -> x == elem) list` 但是如何构造这样一个字符串的部分让我感到困惑,或者也许有一个更简单的方法?多谢各位 我试过这

如果您能告诉我如何在两个整数之间生成一个字符串,我将不胜感激。比如[5..10]我需要一个“5678910”。然后我必须计算一个字符串中有多少(零,一…九)

例如:如果我有[1..10]的范围,我需要打印出来

1 2 11 11

现在我只有一个函数来搜索字符串中的元素

`countOfElem elem list = length $ filter (\x -> x == elem) list`
但是如何构造这样一个字符串的部分让我感到困惑,或者也许有一个更简单的方法?多谢各位

我试过这样的方法,但没用。
let intList=map(read::Int->String)[15..22]

我试过这样的方法,但没用
let intList=map(read::Int->String)[15..22]

嗯。。。
read
的目的是将字符串解析为可读取的值。因此,它有一个类型签名
String->a
,显然与
Int->String
不统一。这里需要的是
read
的逆1,它被称为
show

事实上,
map show[15..22]
几乎给出了您要求的结果–数字作为十进制编码字符串–但每个数字仍然作为一个单独的列表元素,即键入
[String]
,而您只需要
字符串
。嗯,怎么样?它提供了第五次点击时所需的功能:
concat

如果您想获得更多乐趣,可以将
map
concat
阶段结合起来:
concatMap
函数和
>=
操作符都可以这样做。实现结果的最简洁的方法:
[15..22]>=show



准确地说,1
show
只是
read
的右倒数。

也许你可以使用和
show
某种方式。。。(你的想法过去是/现在不远了-只是
阅读
是另一种方式-更好地使用
显示
地图
本身不会让你快乐-但这是一个好的开始)我会尝试的,谢谢。