多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > 框架設計 > 大數據系列修煉-Scala課程35

大數據系列修煉-Scala課程35

來源:程序員人生   發布時間:2016-11-05 08:56:42 閱讀次數:3333次

大數據系列修煉-Scala課程35


核心內容:
1、scala中List的map、flatMap、foreach、filter操作代碼實戰


1、Scala中List的map、flatMap、foreach、filter操作代碼實戰

1>map就是對集合中的所有元素履行1個具體的函數,將函數作用在數值上,并返回1個新的集合結果
2>flatMap:首先對List內部的每一個成員進行map操作,map產生的結果會是1個List(List(char)),然后在產生結果的基礎上
進行flat–將map操作后的結果進行合并,產生合并以后的集合(List[char])。
簡單來講:flatMap首先履行map操作,然后對產生集合的結果進行合并,合并出1個新的集合結果
toList作用在具體的字符串上面:將字符串的list集合變成字符的list集合:List[List[Char]]
3>foreach:就是對集合中的每個元素履行1個具體的函數,將函數作用在數值上,與map不同的是,foreach不產生具體的
結果,結果是Unit類型的。
4>filter:過濾出列表中符合條件的元素,filter結構中傳進來的參數是1個結構為布爾類型的函數。


實例程序1:

//map函數:就是對集合中的所有元素履行1個具體的函數,將函數作用在數值上,并產生1個新的集合結果 val arr = Array(10,20,30) //> arr : Array[Int] = Array(10, 20, 30) val arr2 = arr.map((x:Int)=>x+100) //> arr2 : Array[Int] = Array(110, 120, 130) //將List集合中的每個元素加10,并返回1個新的集合結果 val list1 = List(10,20,30,40) //> list1 : List[Int] = List(10, 20, 30, 40) list1.map((x:Int)=>x+10) //> res0: List[Int] = List(20, 30, 40, 50) list1.map((x)=>x+10) //> res1: List[Int] = List(20, 30, 40, 50) list1.map(_+10) //> res2: List[Int] = List(20, 30, 40, 50) val data = List("Scala","Hadoop","Spark") //> data : List[String] = List(Scala, Hadoop, Spark) data.toList //> res3: List[String] = List(Scala, Hadoop, Spark) data.toList.reverse //> res4: List[String] = List(Spark, Hadoop, Scala) //toList作用在具體的字符串上面:將字符串的list集合變成字符的list集合:List[List[Char]] data.map(_.toList) //> res5: List[List[Char]] = List(List(S, c, a, l, a), List(H, a, d, o, o, p), L //| ist(S, p, a, r, k)) data.flatMap(_.toList) //> res6: List[Char] = List(S, c, a, l, a, H, a, d, o, o, p, S, p, a, r, k) data.map(_.toList.reverse.mkString("\t")) //> res7: List[String] = List(a l a c S, p o o //| d a H, k r a p S) //將List集合變成1個字符串 data.toList.reverse.mkString("---") //> res8: String = Spark---Hadoop---Scala data.map((str:String)=>str.length) //> res9: List[Int] = List(5, 6, 5) data.map(_.length) //> res10: List[Int] = List(5, 6, 5) data.map(_.toList.reverse.mkString) //> res11: List[String] = List(alacS, poodaH, krapS)

實例程序2:

object App { def main(args:Array[String]):Unit= { val list = List(10,20,30,40) val list2 = list.foreach((x:Int)=>x+10) val list3 = list.map((x:Int)=>x+10) println(list2) println(list3) var sum = 0 list.foreach(sum+=_) println(sum) val list4 = List.range(1, 11).filter(_%2==0) println(list4) val list5 = List("spark","hadoop","hbase").filter(_.length==5) println(list5) } }

運行結果:

() List(20, 30, 40, 50) 100 List(2, 4, 6, 8, 10) List(spark, hbase)
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 爱爱永久免费视频网站 | 在线观看av网站永久 | 久久国产区| 国产成人永久免费视频 | 性欧美黑人巨大videos | 国产精品久久久久久久久久久久 | 免费在线亚洲视频 | 亚洲区欧美区小说区图片区 | 综合亚洲欧美日韩一区二区 | 欧美18videosex性欧美群 | 午夜视频免费在线播放 | 欧美性猛交xxxx免费看久久久 | 亚洲久久综合 | 综合免费视频 | 国产 | 久而欧洲野花视频欧洲1 | 最近中文字幕++中文 | 亚洲福利一区二区三区 | 亚洲第一视频在线 | 黄色一级片生活片 | 久久国 | 中文字幕在线第一页 | 福利片免费一区二区三区 | 五月天婷五月天综合网在线 | 六月亚洲精品一区 | 成人毛片国产a | 精品一区二区三区高清免费不卡 | 中文乱码视亚洲 | 免费簧网站永久在线播放国产 | 一级a性色生活片毛片 | www视频在线观看com | 欧美最猛性xxxxx(亚洲精品) | 国内成人自拍 | 精品久久久久不卡无毒 | 国产高清国产精品国产k | 精品国产一区二区 | 日本一区二区三区四区在线观看 | 我想看一级毛片 | 手机在线一区二区三区 | 69国产成人精品视频软件 | 日本大黄毛片视频 | 久久片 |