[英]Single vs. double quotes in Haskell
考虑:
ghci> :t 'a'
'a' :: Char
ghci> :t "a"
"a" :: [Char]
为什么不同地处理单引号和双引号,这是否重要?
这就像C / C ++ / C#/ Java和其他编程语言。 单引号表示单个字符,双引号表示字符数组(字符串)。
在Haskell中, 'c'
是单个字符( Char
), "c"
是字符列表( [Char]
)。
您可以将其与整数和整数列表进行比较:
ghci> let a = 1
ghci> let b = [1,2,3]
ghci> :t a
a :: Integer
ghci> :t b
b :: [Integer]
这很重要,因为必须区分单个元素和元素列表。 您可以对简单元素执行不同的操作,也可以对列表执行不同的操作。
它们的解释不同,因为它们只是(这就是语言的定义)。 这很重要,因为Char
和[Char]
不是一回事。 除此之外,我不确定你在这里要问什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.