【问题标题】:How does the Swift string more than operator work [duplicate]Swift 字符串比运算符如何工作 [重复]
【发布时间】:2018-10-09 19:11:02
【问题描述】:

我在阅读有关 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"]

我似乎无法找到,> 运算符在这种情况下是如何工作的,我认为它会做一些事情,比如计算字符的数量,然后根据它返回一个布尔值,但是该逻辑以下 sn-p 应返回 false:

"CD" > "ABC" // true

有人能解释一下这里发生了什么吗?

【问题讨论】:

  • 您目前对字符串比较的了解/理解程度如何?
  • @Wain 我只在其他语言中使用过基本的=====!=,所以看到大于/小于被使用是相当新的

标签: ios swift


【解决方案1】:

我相信 javascript 使用完全相同的字符串比较方法和相同的语法。在 javascript 中你也可以使用localeCompare()。在 swift 中,您也可以使用 localizedCompare(_:) (或其他字符串比较函数之一)。它们都是按字母顺序比较字符串的不同方式和不同选项。

【讨论】:

【解决方案2】:

Swift 进行字典字符串比较。在您查看之前已询问过此问题here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 1970-01-01
    • 2019-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多