我需要用一大堆的比賽情況Scala中,我怎麼使用或如果匹配盒子內部,例如:邏輯,如果裏面的比賽情況斯卡拉
import scala.util.Random
val x = Random.nextInt(30)
val result = match x {
case 0 to 10 => bad
case 11 to 20 => average
case 20 to 30 => cool
}
的第一個問題是怎麼做的我這樣做,而不是使用floor
,ceil
,round
或其他數學的東西?
其次,對於字符串值,在PHP中,我們可以很容易地使用if (x == 'some')||(x == 'thing'){result}
但這怎麼可以在scala匹配情況下工作?
例如當VAL x是隨機的A至I:
val result = match x {
case A || B || C => bad
case D || E || F => average
case G || H || I => cool
}
謝謝!
的可能的複製[?我怎樣才能在斯卡拉一系列模式匹配(http://stackoverflow.com/questions/3160888/how-can-i-pattern-match-on-a-範圍在斯卡拉) –
但它不同@YuvalItz chakov我的問題還包括字符串,並且我認爲Pamu的答案比使用狀態好得多,如果狀態爲 –
那裏的答案不使用'if-else'表達式。另外,從查看如何使用整數的警衛,你可以推斷出如何爲字符串做同樣的事情。 –