中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Scala實現worldcount功能

發布時間:2021-12-09 09:21:57 來源:億速云 閱讀:188 作者:iii 欄目:開發技術

這篇文章主要講解了“如何使用Scala實現worldcount功能”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何使用Scala實現worldcount功能”吧!

新建ScalaWorldCount對象:

package com.ruozedata.day4

object ScalaWorldCount {

  def main(args: Array[String]): Unit = {

    val lines = List("hello ruoze hello jepson","hello ruoze hello jepson hello china")

    /**第一種方法

      * flatMap=map+flatten  lines.flatMap 將數據壓扁

      *  flatMap(_.split(" "))   拿到每一個元素(字符串),按照空格切割

      *  map((_,1))  將單詞出現一次和1放在一起(放入元組)

      *  groupBy(_._1) 第一個_ 表示List中的每一個元組,取元組中的某一個元素用._n,即按照元組中的某一元素分組,返回是一個map

      *  map(t=>(t._1,t._2.size)) 第一個_ 拿到一個對偶元組,取元組中的第一個元組。_._2.size即是取對偶元組第二個的個數。

      *

      */

    val wc = lines.flatMap(_.split(" ")).map((_,1)).groupBy(_._1).map(t=>(t._1,t._2.size)).toList // .sortBy(_._2).reverse

    for(j <-  0 until wc.length) println(wc(j)+"\t")

    /** 第二種方法

      * foldLeft(0)(_+_._2)第一個_表示初始值或者上一次累加的結果 中第二個_ ,表示拿到的每一個元組,第三個元組的中第n個值

      */

    val wc = lines.flatMap(_.split(" ")).map((_,1)).groupBy(_._1).mapValues(_.foldLeft(0)(_+_._2))

    for(i <- wc) println(i+"\t")

  }

}

運行結果:

(china,1)

(ruoze,2)

(jepson,2)

(hello,5)

Process finished with exit code 0

感謝各位的閱讀,以上就是“如何使用Scala實現worldcount功能”的內容了,經過本文的學習后,相信大家對如何使用Scala實現worldcount功能這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桦川县| 鄯善县| 松潘县| 华容县| 无棣县| 元谋县| 灵武市| 泸西县| 咸阳市| 佛坪县| 璧山县| 胶南市| 财经| 罗江县| 利津县| 温泉县| 米易县| 屏南县| 淳化县| 长丰县| 屯昌县| 叙永县| 永靖县| 霍林郭勒市| 德州市| 喜德县| 贵南县| 镇原县| 赤城县| 鄂托克前旗| 湟中县| 元谋县| 南召县| 平顶山市| 扬州市| 河源市| 宜丰县| 福州市| 平泉县| 塔城市| 大悟县|