赞
踩
对象类型泛型:Map类型。只对集合中value做操作、key保持不变。一般用于求和,分组最大,分组最小,均值。常用于分组求聚合。
高阶函数(算子)--------sql,用sql语句思路翻译高阶函数。
def f1(): Unit ={ var linelist: List[(String, Int)] = List(("hello scala hello world",4), ("hello world",3),("hello hadoop",2),("hello hbase",1)) val flatmapRDD: List[(String,Int)] = linelist.flatMap(t=>{ var line:String = t._1 //"hello scala hello world" val word: Array[String] = line.split(" ") //"hello" "scala" "hello" "world" val mapRDD: Array[(String, Int)] = word.map(w=>(w,t._2)) //("hello",4),("scala",4).... mapRDD }) val groupRDD: Map[String, List[(String, Int)]] = flatmapRDD.groupBy(t=>t._1) val stringToint: Map[String, Int] = groupRDD.mapValues(data=>data.map(tt=>tt._2).sum) println(stringToint.mkString("|"))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。