Scala 的知识点

复制代码
1. 字符串.split("分隔符"):把字符串用指定的分隔符,拆开成多个部分,保存在数组中。
复制代码
从文件1.txt 中,读入内容。
Scala 复制代码
    val content=Source.fromFile("1.txt").mkString
//    println(content)
复制代码
把字符串中的每个单词,拆出去
正则表达式
 \\W+: 大写字符W表示:非字(不是一个字的字符。列如:空格 逗号 句号 换行...)
 +:一个或者多个
Scala 复制代码
val arr=content.split("\\W+")  //得到是一个字符串数组

统计词频

Scala 复制代码
    val m1=scala.collection.mutable.Map[String,Int]()
    arr.foreach(word =>{
      //检查是否出现过?
      if (m1.contains(word)){
        //把票数+1
        m1(word)+=1
      }else{
        //票数为1
        m1(word)=1
      }
    })
复制代码
对于m1,它是一个Map(thank:10, is:5), 现在需要对它进行排序,把出现次数最多的放在最前面,然后再输出。
// (thank,10)
Scala 复制代码
    //只要排序之前的结果的前15个?在List中取出前15个?
    val sortedM1 =m1.toList.sortWith((a,b)=>a._2>b._2).filter(a=>a._1.length>2).slice(0,15)

开始写入代码

Scala 复制代码
    val writer=new PrintWriter("2.txt")
    //输出排序后的Map
    //把结果保存到一个新的文件中
    writer.println("统计的结果是:")
    sortedM1.foreach { case (word, cishu) => writer.println(s"${word}: ${cishu}") }
    writer.close()// 结束写入
相关推荐
君顾12 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
Elastic 中国社区官方博客2 小时前
列式存储并不等同于列式数据库。Columnar 模式为 Elasticsearch 带来了什么
大数据·运维·数据库·elasticsearch·搜索引擎
weixin199701080162 小时前
[特殊字符]️《二手ERP对接电商平台的总体方案:统一数据模型 + 事件驱动 + 灰度上线6原则》(附Python源码)
大数据·python
香菜TTT2 小时前
大模型上下文协议(MCP):AI 应用的“USB-C”接口技术
开发语言·人工智能·经验分享
aramae3 小时前
模拟实现strlen()函数 (C语言)
c语言·开发语言·后端
大大大大晴天3 小时前
从元数据到数据地图:企业数据治理的第一块地基
大数据
科创致远3 小时前
科创致远 eSOP 电子作业指导书系统落地应用指南
大数据·人工智能·汽车·制造·精益工程
jimy14 小时前
readelf 查看“派生类”的vtable符号
开发语言·c++
ctlover4 小时前
排序与查找算法详解
开发语言·python
YYYing.4 小时前
【C++进阶系列 (七)】C++ RTTI 深度剖析:从 typeid 到 dynamic_cast 的底层之旅
开发语言·c++·c/c++·rtti