33333

import java.io.PrintWriter

 

import scala.io.Source

 

 

object Test_全文单词统计 {

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

    //1.读入文件

    val content = Source.fromFile("1.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 (word <- arr){

// if (出现){ }

// else{}

      if(wordMap.contains(word)){

        wordMap(word) += 1

      }else{

        wordMap(word)=1

      }

    }

 

    //4.排序。 Map是无序,要做排序,先要把数组转成序列, List,Array

    println(wordMap.toList)

    val orderWordList = wordMap.toList.sortWith((a,b)=> a._2 > b._2)

 

    for (e <- orderWordList){

      println(e)

    }

    val writer = new PrintWriter("out.txt")

    writer.println("结果是:")

    writer.println("thanks:12")

    writer.close()

 

  }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值