什么是haskell相当于
string str = string.Format("{0} {1}",10,20); // C#
答案 0 :(得分:33)
GHC中有一个Printf模块。
import Text.Printf
str :: String
str = printf "%d %d" 10 20
然而,只做
可能更简单str = show 10 ++ " " ++ show 20
答案 1 :(得分:23)
您可以使用text-format-simple包提供的format
功能:
import Text.Format
format "{0} {1}" [show 10, show 20]
此功能具有签名:
format :: String -> [String] -> String
所以你需要的只是提供你的参数作为字符串 另一个例子:
format "Some {0} believes that 1 + 1 = {1}." ["people",show 10]
答案 2 :(得分:7)
在这里给出答案,以防有人在StackOverflow上的 Haskell 中搜索格式化库。现在有一个名为fmt
的类型安全和快速格式化库。有了它,您可以编写如下代码:
> "There are "+|n|+" million bicycles in "+|city|+"."
答案 3 :(得分:4)
答案 4 :(得分:2)
或者您可以写
unwords [show 10, show 20]
甚至
unwords (map show [10, 20])