11.21Scala

复制代码
import java.io.PrintWriter
import scala.io.Source
object ddd1 {
  def main(args: Array[String]): Unit = {
    //读入文件内容
    val content = Source.fromFile("dd.txt").mkString
    println(content)
    //2.把字符串拆分为一个一个的单词,保存到数组
    //正则表达式
    //\\:表示正则表达式
    // w:表示一个非字(不是一个字,例如:空格,逗号,句号)
    //w+:多个非字
    val arr = content.split("\\w+")
    for(word <-arr){
      println(word)
    }
    //3.统计每个单词出现的次数
    val wordMap = scala.collection.mutable.Map[String,Int]()
    for(w <-arr){
      val word = w.toLowerCase()//把单词全部小写
      if(wordMap.contains(word)){
        wordMap(word)+=1
      }else{
        wordMap(word)=1
      }
    }
    //排序,Map是无序,要做排序,先要把数组转成数列,List,Array
    println( wordMap.toList)
    val orderWordList = wordMap.toList.sortWith((a,b)=>a._2>b._2).filter(e=>e._1,length>2).slice(0,30)
    //5.把结果写到一个文件中
    for(e<-orderWordList){
      println(e)
    }
    val writer= new PrintWriter("out.txt")
    writer.println("结果是:")
    writer.println("the:20次")
    writer.close()
  }

}
相关推荐
chilavert3181 分钟前
技术演进中的开发沉思-230 Ajax:Prototype.js 重构原生 DOM
开发语言·前端·javascript
csbysj20207 分钟前
SVN 标签
开发语言
2501_930707789 分钟前
如何在 C# 中分离饼图的某个区域
开发语言·c#
c#上位机11 分钟前
halcon图像膨胀—dilation1
图像处理·算法·c#·halcon
缺点内向13 分钟前
如何在C#中添加Excel文档属性?
开发语言·数据库·c#·.net·excel
Howie Zphile23 分钟前
做移动端的 Next.js 项目,可以选哪些 UI?
开发语言·javascript·ui
无限进步_26 分钟前
C语言文件操作函数解析
c语言·开发语言·数据库·c++·后端·visual studio
星辰烈龙31 分钟前
黑马程序员Java基础7
java·开发语言
big-seal33 分钟前
分页列表中能够按照名称查询,使用 mybatis 的 Example 动态构造 SQL where 条件
java·开发语言
white-persist33 分钟前
【攻防世界】reverse | answer_to_everything 详细题解 WP
c语言·开发语言·汇编·python·算法·网络安全·everything