scala学习:模式匹配高级实战:嵌套的Case class

来源:互联网 发布:淘宝商城冰箱价格 编辑:程序博客网 时间:2024/06/05 06:19

最近不清楚是工作忙的情况还是知识点越来越深入了。对知识的理解有点吃力起来。到目前已经好几章的视频都是模棱两可的。


先记录这节视频的内容吧。留待以后再深入理解吧。


示例代码:

package com.mk.hello


abstract class Item
case class Book(desc : String , price : Double) extends Item
case class Bundle(desc:String,price:Double,items:Item*) extends Item


object Pattern_Match_Case_Class_Nested {
  def main(args: Array[String]): Unit = {
    def caseclass_nested(person:Item) = person match{
      case Bundle(_,_,art @Book(_,_),rest @ _*)=>println(art.desc+":" + art.price)
      case _ =>println("oops")
    }
    
    caseclass_nested(Bundle("1111 special's",30.0,
        Book("Scala",69.95),
        Bundle("Hadoop",40.0),
        Book("Hive",23.1),
        Book("Java",32.32)))
        
        caseclass_nested(Bundle("1212 Special's",35.0,
            Book("Spark for",40.0)))
  }  
}


以上内容是从王家林老师DT大数据课程第30讲的学习笔记。
DT大数据微信公众账号:DT_Spark  

王家林老师QQ:1740415547 

王家林老师微信号:18610086859

第30讲视频链接:http://pan.baidu.com/s/1bne1TcN
优酷播放地址:http://v.youku.com/v_show/id_XMTI3MzU0NDUwOA==.html

0 0
原创粉丝点击