我刚刚开始学习Haskell,而我正在读一本名为“为了好大学而学习哈斯克尔!”的书。
在第2章中,有一些我无法得到的东西。
当我使用“>”比较两个字符串时运营商为前:
ghci> "Abrakadabra" < "Zebra"
True
我不明白为什么它会返回true。我试图根据ASCII字符分析这个,但我仍然不明白为什么。 我认为我们比较字符串中的字符数,但这个例子改变了我对它的理解。
有人可以帮我澄清一下吗?
答案 0 :(得分:12)
这是词典排序,如果您在字典中查找内容,就应该期待这种顺序。
答案 1 :(得分:3)
这不是比较单词的长度。它在Z之前查看字母顺序A。
答案 2 :(得分:1)
你有一个使用GHCI的答案:
Prelude> "a" > ""
True
Prelude> "a" > " "
True
和
Prelude> compare "a" ""
GT
Prelude> compare "a" " "
GT
角色&#39; a&#39;大于空间而没有任何东西