Scala入门:filter操作

大数据技术原理与应用

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]
在实际编程中,我们经常会用到一种操作,遍历一个集合并从中获取满足指定条件的元素组成一个新的集合。Scala中可以通过filter操作来实现。

下面我们首先创建一个映射(可以把下面语句逐条拷贝到Scala解释器中执行):

val university = Map("XMU" -> "Xiamen University", "THU" -> "Tsinghua University","PKU"->"Peking University","XMUT"->"Xiamen University of Technology")

然后我们采用filter操作过滤得到那些学校名称中包含“Xiamen”的元素:

val universityOfXiamen = university filter {kv => kv._2 contains "Xiamen"}

下面,根据前面我们已经学习过的遍历映射的语句,我们可以把universityOfXiamen中的元素进行遍历全部打印出来:

universityOfXiamen foreach {kv => println(kv._1+":"+kv._2)}

可以得到以下结果:

XMU:Xiamen University
XMUT:Xiamen University of Technology

或者,我们也可以采用filter操作过滤得到那些学校名称中以字母“P”开头的元素:

val universityOfP = university filter {kv => kv._2 startsWith "P"}

下面,我们可以把universityOfP中的元素全部打印出来:

universityOfP foreach {kv => println(kv._1+":"+kv._2)}

可以得到以下结果:

PKU:Peking University

子雨大数据之Spark入门
扫一扫访问本博客