【发布时间】:2014-08-16 01:08:05
【问题描述】:
免责声明:快速新手
您好,我刚刚开始学习 Swift,并且正在阅读 The Swift Programming Language(Apple 在 WWDC 期间发布的书籍)并且想知道“where”关键字是什么。它被用于
let vegetable = "red pepper"
switch vegetable {
case "celery":
let vegetableComment = "Add some raisins and make ants on a log."
case "cucumber", "watercress":
let vegetableComment = "That would make a good tea sandwich."
case let x where x.hasSuffix("pepper"):
let vegetableComment = "Is it a spicy \(x)?"
default:
let vegetableComment = "Everything tastes good in soup."
}
摘自:Apple Inc.“Swift 编程语言”。电子书。 https://itun.es/us/jEUH0.l
如果有人可以用另一种语言(java、c++、obj-c 等)解释和/或展示等价物,那就太好了。
抱歉,如果有人问过这个问题,我在任何地方都没有看到。
【问题讨论】:
-
我认为您提到的语言没有直接的等价物(缺少手动构造
if语句)。 Scala 在其模式匹配方面也有一些相似之处。 -
我认为人们不应该否决这个问题,但是@Alex,你真的应该只是阅读文档。
-
@theMonster 这可能是真的,但我仍然认为这是一个公平的问题。大多数人会在立即查阅文档之前搜索他们的问题。此外,文档页面甚至不在谷歌搜索的第一页上,所以即使我被否决了,希望这对其他人有帮助。
-
@Alex 同意了,因为
where已经有很多其他语言,我敢肯定它已经可以谷歌搜索了。也就是说,这仍然是一个非常相关的问题,不应该被否决。