【发布时间】:2010-11-23 16:27:36
【问题描述】:
是否可以在 Scala 中匹配一系列值?
例如:
val t = 5
val m = t match {
0 until 10 => true
_ => false
}
如果t 介于 0 和 10 之间,m 将是 true,否则为 false。这一点当然是行不通的,但是有没有什么办法可以实现呢?
【问题讨论】:
-
请注意,写“0 到 10”是指 0、1、2、...、9(包括 0,不包括 10)。如果要包括 10,请使用“0 到 10”。
-
查看相关的 stackoverflow 问题:How can I pattern match on a range in Scala?
-
标题询问如何将
Range类型的值与多种可能性相匹配,例如“我有(0..5)还是(1..6)?” -
val m = 0 until 10 contains t实际上相同但更短。它会给你正确/错误的答案。如果您只需要一个布尔答案。
标签: scala pattern-matching range matching