在Scala中,可以使用模式匹配的守卫(pattern guards)来进一步筛选匹配的结果。守卫是在模式匹配中使用if关键字后面的条件表达式。下面是一个简单的例子:
def checkValue(x: Any): Unit = x match {
case i: Int if i > 0 => println("Positive integer")
case s: String if s.length > 5 => println("String with length greater than 5")
case _ => println("Other")
}
checkValue(10) // 输出 Positive integer
checkValue("Scala is great") // 输出 String with length greater than 5
checkValue(List(1, 2, 3)) // 输出 Other
在上面的例子中,我们使用了模式守卫来进一步筛选匹配的结果。如果匹配的是正整数且大于0,则输出"Positive integer";如果匹配的是字符串且长度大于5,则输出"String with length greater than 5";否则输出"Other"。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。