Scala模式匹配中@的含义


  //@是为了给模式匹配起个变量名,一般格式为:variableName@pattern,示例:
object VariableTest { 
  def main(args: Array[String]): Unit = {     val list = List(123456)     list match {       //right其实就代表了一个集合,元素为3,4,5,6
      case List(_, _, right@_*) => println(right)       case _ =>     }     list match {       //这种写法错误       //case l:List(_, _, _*) => println(right)       //正确写法,下面两种输出结果一致
      case list@List(_, _, _*) => println(list)       case list: List[_] => println(list)     }   } } 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM