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と似たような感じなのだろう。
とか思ってたら同じような疑問を抱いた人は既にいた。
どうやらSwift独特の文法らしい。