Swift 字符串比运算符如何工作
How does the Swift string more than operator work
我正在阅读有关 Swift 编程语言的文档,当我遇到 the following code snippet:
let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
func backwards(s1: String, _ s2: String) -> Bool {
return s1 > s2
}
names.sort(backwards) // ["Ewa", "Daniella", "Chris", "Barry", "Alex"]
我似乎找不到的是 >
运算符在这种情况下的工作方式,我认为它会做一些事情,比如计算字符数量,然后 return基于此的布尔值,但根据该逻辑,以下代码段应该 return false:
"CD" > "ABC" // true
有人可以解释一下这是怎么回事吗?
Swift 进行字典字符串比较。在您查看之前已被询问过 here
我相信 javascript 使用完全相同的字符串比较方法和相同的语法。在 javascript 中,您也可以使用 localeCompare()
。在 swift 中,您也可以使用 localizedCompare(_:)
(或其他字符串比较函数之一)。它们都是按字母顺序比较字符串的不同方式和不同选项。
我正在阅读有关 Swift 编程语言的文档,当我遇到 the following code snippet:
let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
func backwards(s1: String, _ s2: String) -> Bool {
return s1 > s2
}
names.sort(backwards) // ["Ewa", "Daniella", "Chris", "Barry", "Alex"]
我似乎找不到的是 >
运算符在这种情况下的工作方式,我认为它会做一些事情,比如计算字符数量,然后 return基于此的布尔值,但根据该逻辑,以下代码段应该 return false:
"CD" > "ABC" // true
有人可以解释一下这是怎么回事吗?
Swift 进行字典字符串比较。在您查看之前已被询问过 here
我相信 javascript 使用完全相同的字符串比较方法和相同的语法。在 javascript 中,您也可以使用 localeCompare()
。在 swift 中,您也可以使用 localizedCompare(_:)
(或其他字符串比较函数之一)。它们都是按字母顺序比较字符串的不同方式和不同选项。