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

}
相关推荐
专注VB编程开发20年6 分钟前
C#,VB.NET从JSON数据里提取数组中的对象节点值
c#·json·.net
不良手残15 分钟前
IDEA类和方法注释模板设置-保姆教程
java·开发语言
项目題供诗32 分钟前
黑马python(二十四)
开发语言·python
就改了1 小时前
JUC小册——公平锁和非公平锁
java·开发语言
一粒沙白猫2 小时前
Java综合练习04
java·开发语言·算法
哎呦你好2 小时前
【CSS】Grid 布局基础知识及实例展示
开发语言·前端·css·css3
一入JAVA毁终身2 小时前
处理Lombok的一个小BUG
java·开发语言·bug
Accpdaiyekun2 小时前
C# 操作mongodb 多次查询快还是使用管道查询速度快
mongodb·c#·lua
Hellyc2 小时前
JAVA八股文:异常有哪些种类,可以举几个例子吗?Throwable类有哪些常见方法?
java·开发语言
2301_803554522 小时前
c++中的绑定器
开发语言·c++·算法