我有以下示例:
val i:Option[Int] = Some(3)
val q = i match {
case Some(n) if n == 2 | n == 3 => 42
case Some(n) => n
case None => 12
}
除了||
而不是|
的守卫中的“或”之外,以下相同的内容会产生相同的结果。
val q = i match {
case Some(n) if n == 2 || n == 3 => 42
case Some(n) => n
case None => 12
}
后卫位置|
和||
之间有什么区别?如果存在差异,那么应该使用哪一个?