Scala提取器Extractor实战详解之Scala学习笔记-19

package com.leegh.pattern_match

/**
* @author Guohui Li
*/
object Extractor {
def main(args: Array[String]): Unit = {
def match_array(arr: Any) = arr match {
case Array(0) => println("Array" + "0")
case Array(x, y) => println("Array" + x + " " + y)
case Array(0, _*) => println("Array" + "0 ...")
case _ => println("something else")
}
match_array(Array(0))
match_array(Array(0, 1))
match_array(Array(0, 1, 2, 3, 4, 5, 6))

val pattern = "([0-9]+) ([a-z]+)".r
"20150809 hadoop" match {
case pattern(num, item) => println(num + ":" + item)
}
}
}

附:

本博客说明:

1.整理思路,提高自己。

2.受教于王家林老师,?有所收获,故推荐。

3.博客注重实践,多余的文字就不多说了,都是做技术的。

4.信息来源于 DT大数据梦工厂微信公众账号:DT_Spark。?

DT大数据梦工厂的微信公众号是DT_Spark,每天都会有大数据实战视频发布,请您持续学习。

Scala 深入浅出实战经典(1-64讲)完整视频、PPT、代码下载:

百度云盘:http://pan.baidu.com/s/1c0noOt6
腾讯微云:http://url.cn/TnGbdC
360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2

DT大数据梦工厂的微信公众号是DT_Spark,每天都会有大数据实战视频发布,请您持续学习。

时间: 2024-11-07 21:32:36

Scala提取器Extractor实战详解之Scala学习笔记-19的相关文章

第28讲:Scala提取器Extractor实战详解

提取器是从表达式中获取值 第27讲中的match代码也是一种提取器     def match_array(arr : Any) = arr match {       case Array(x) => println("Array(1):",x) // 长度为1的数组,x代表数组中的值       case Array(x,y) =>  println("Array(2):",x,y) // 长度为2的数组,x代表数组中的第一个值       case

Scala中复合类型实战详解之Scala学习笔记-44

package com.leegh.parameterization import com.leegh.parameterization.Compound_Type /** * @author Guohui Li */ trait Compound_Type1;trait Compound_Type2;class Compound_Type extends Compound_Type1 with Compound_Type2object Compound_Type { def compound_

Scala中结构类型实战详解之Scala学习笔记-43

package com.leegh.parameterization /** * @author Guohui Li */ class Structural { def open() = print("A class instance Opened") } object Structural_Type { def main(args: Array[String]): Unit = { init(new { def open() = println("Opened")

Scala中Dependency Injection实战详解之Scala学习笔记-47

package com.leegh.parameterization /** * @author Guohui Li */ trait Logger { def log(msg: String) }trait Auth { auth: Logger => def act(msg: String) { log(msg) }} object DI extends Auth with Logger { override def log(msg: String) = println(msg)} obje

Scala中Abstract Types实战详解之Scala学习笔记-48

package com.leegh.parameterization import scala.io.BufferedSourceimport scala.io.Source /** * @author Guohui Li */trait Reader { type In <: java.io.Serializable type Contents def read(in: In): Contents}class FileReader extends Reader { type In = Stri

Scala中Self Types实战详解之Scala学习笔记-46

package com.leegh.parameterization /** * @author Guohui Li */class Self { self => val tmp = "Scala" def foo = self.tmp + this.tmp}trait S1class S2 { this: S1 => }class S3 extends S2 with S1 trait T { this: S1 => }object S4 extends T wit

Scala中SAM转换实战详解之Scala学习笔记-15

package com.leegh.function import javax.swing.JFrameimport javax.swing.JButtonimport java.awt.event.ActionListenerimport java.awt.event.ActionEvent /** * @author Guohui Li */object SAM_Curring { def main(args: Array[String]): Unit = { var data = 0; v

Scala 深入浅出实战经典 第53讲:Scala中结构类型实战详解

王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-64讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 腾讯微云:http://url.cn/TnGbdC 360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2土豆:http://www.tudou.com/programs/view/pR_4sY0cJLs/优酷:http://v.youku.com/v_show/id_

Scala 深入浅出实战经典 第57讲:Scala中Dependency Injection实战详解

王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 腾讯微云:http://url.cn/TnGbdC 360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2土豆:http://www.tudou.com/programs/view/5LnLNDBKvi8/优酷:http://v.youku.com/v_show/id_