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()
  }

}
相关推荐
AI科技星4 分钟前
全域数学·第三部·数术几何部·平行网格卷 完整专著目录(含拓扑发展史+学科定位·终稿)
c语言·开发语言·网络·量子计算·agi
SunnyDays10116 分钟前
Java 读写 Excel 公式:从基础到高级的实战总结
java·开发语言·excel
wb043072018 分钟前
Java 26
java·开发语言
白露与泡影11 分钟前
JVM GC调优实战:从线上频繁Full GC到RT降低80%的全过程
java·开发语言·jvm
灰灰勇闯IT12 分钟前
pyasc:用 Python 调用 CANN 的推理能力
开发语言·python
笨拙的老猴子1 小时前
[特殊字符] Java GC机制详解:G1、ZGC、Shenandoah全面解析与版本演进对比
java·开发语言
水木流年追梦1 小时前
大模型入门-Reward 奖励模型训练
开发语言·python·算法·leetcode·正则表达式
电子云与长程纠缠1 小时前
UE5制作六边形包裹球体效果
开发语言·python·ue5
砍材农夫1 小时前
物联网 基于netty构建mqtt协议规范(遗嘱与保留消息)
java·开发语言·物联网·netty
froginwe112 小时前
Python3 迭代器与生成器
开发语言