scala开发Spark程序时使用map +case结构的一点小技巧
people.txt文本如下
lyzx1,19
lyzx2,20
lyzx3,21
lyzx4,22
lyzx5,23
lyzx6,24
lyzx7,25
lyzx7,25,哈哈
托塔天王
package com.lyzx.start
import org.apache.spark.{SparkConf, SparkContext}
class Start02 {}
object Start02{
/**
* map 用法深度理解
* 1、在map中使用if-elseif分支结构最好带上else 表示把所有的情况都考虑全 否则会返回默认的空值
* 2、在map中使用case是scala的用法和spark没有关系 同样要使用case 最好带上 case _ 表示所有的情况都考虑完全
* 否则容易出异常
* @param args
*/
def main(args: Array[String]): Unit = {
val sparkConf = new SparkConf()
sparkConf.setAppName("case_test")
sparkConf.setMaster("local[2]")
val sparkContext = new SparkContext(sparkConf)
val rdd = sparkContext.textFile("files/people.txt")
rdd.map(line=>line.split(","))
.map(
line=>if(line.l