読者です 読者をやめる 読者になる 読者になる

whereについて

今までiOSアプリのプログラミングにはObjective-Cを使っていたのだが、ようやくSwiftを勉強する仕儀となった。

そこでアップルのドキュメントを読んでいたのだが、こういうのを見つけた。

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."
}

わからなかったのは、

case let x where x.hasSuffix("pepper"):

と書いてある「where」の部分。SQL文でWHERE句というのはよく使うが、それ以外でwhereは初めて見たかもしれない。
他の言語でも使えるのだろうか。

アップルのドキュメントにはwhereの説明とか別になかったから、他の言語でもきっとあるのだろう。
意味的には絞り込みという感じでSQL文のWHEREと似たような感じなのだろう。

とか思ってたら同じような疑問を抱いた人は既にいた。

stackoverflow.com

どうやらSwift独特の文法らしい。