概念

匹配List和匹配Array效果是一样的.

案例1

  1. val list = List(10, 20, 30, 40)
  2. list match {
  3. case List(a, b, c, d) =>
  4. println(s"List(a, b, $c, $d)")
  5. }

执行结果

List(a, b, 30, 40)

案例2

  val list = List(10, 20, 30, 40)
    list match {
      case List(10, abc@_*) =>
        println(abc)
    }

输出:

List(20, 30, 40)

案例3

只是获取第一个,和只获取除了第一个的其它所有,可以用 rest

   val list = List(10, 20, 30, 40)

    list match {
      // rest就是集合
      case a :: rest =>
        println(a)
        println(rest)
    }
10
List(20, 30, 40)