scala 统计词频

输入一个word列表和一个empty的map

  /**
   * 计算列表词频,返回一个map
   *
   * @param list
   * @param map
   * @return
   */
  @scala.annotation.tailrec
  def generateMap(list: List[String], map: Map[String, Int]): Map[String, Int] = list match {
    case x :: y => if (map.keySet.contains(x)) generateMap(y, map ++ Map(x -> (map(x) + 1))) else generateMap(y, map ++ Map(x -> 1))
    case Nil => map
  }
posted @ 2020-11-10 12:00  JunCode  阅读(103)  评论(0编辑  收藏