scala模式匹配保护条件与或表达式(或更多preciesly - scala boolean | vs ||)

时间:2017-01-04 13:47:35

标签: scala

我有以下示例:

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
}

后卫位置|||之间有什么区别?如果存在差异,那么应该使用哪一个?

0 个答案:

没有答案