可能重複:
Scala: short form of pattern matching that returns BooleanScala是否有一個「test-if-match」操作符?
在我的Scala代碼我發現自己經常寫東西像下面這樣:
x match{
case Type(params) => doStuffWith(params)
case _ => /* do nothing*/
}
是否已有一些預定義的運營商做這個?我認爲,如果我能寫出如下內容會更清楚:
if(x match Type(params)) {
doStuffWith(params)
}
本質上避免了奇怪的情況。我還有其他一些能夠驗證內聯模式中某個模式是否匹配的情況,可以爲我節省一大筆額外的大括號。
我知道這樣的事情在編寫更多迭代代碼時可能只會更有用,但Scala似乎有這麼多隱藏功能,我想知道是否有人有一個簡單的解決方案。
你看着提取? – phant0m
許多內置類型也有此謂詞,例如isither/isRight,List的isNil,Options isNone等 – Squidly