我想要做這樣的事情:模式匹配穿過斯卡拉
val a = v match {
case 1 => 1
case 2 if (condition) => logging
case 2 if (other conditions) => 3
case 2 if (more conditions) => 4
case _ => 5
}
我想這回只要登錄了第一例2,而是通過另外落在看什麼獲取返回
編輯:更新
我想要做這樣的事情:模式匹配穿過斯卡拉
val a = v match {
case 1 => 1
case 2 if (condition) => logging
case 2 if (other conditions) => 3
case 2 if (more conditions) => 4
case _ => 5
}
我想這回只要登錄了第一例2,而是通過另外落在看什麼獲取返回
編輯:更新
Scala的情況下匹配不「落空」,但如果我理解正確的話,這會做什麼你想。
val a = v match {
case 1 => 1
case 2 => {
logging // I'm assuming `logging` is some Unit
if(some condition) 3
else if(some other condition) 4
else 5
}
case _ => 5
}
爲什麼不寫真正的代碼運行並做你想要的,if語句和返回以及你需要的任何東西,然後詢問如何改進它?我不確定你在這裏想要什麼。 –
更新,坦克.. – Timmy
這還不是真正的代碼,運行並做你想做的。你仍然在想象比賽陳述的運作方式與他們實際做法不同,然後希望我們能夠猜出你的想象。 –