Scala初级实践——统计手机耗费流量(1)
【实验描述】
本实验主要使用Scala语言来实现对手机流量的计算。在该实验中,共有四个需求:
1)统计每一个手机号耗费的总上行流量、下行流量、总流量
2)将统计结果按照手机归属地不同号段(手机号前3位)输出到不同文件中
3)根据需求1)产生的结果再次对总流量进行排序。
4)按照要求2)每个手机号段输出的文件中按照总流量内部排序。
【实验目的】
掌握Scala编程环境的配置安装,能够掌握Scala基本语法,掌握面向对象的编程思想,能够掌握函数式编程思想,能够运用Scala语言进行程序代码编写,能够应用Scala解决实际问题,能够进行应用案例设计和编程实现。
【实验环境】
操作系统:Windows 10;
开发工具:IntelliJ IDEA 2020.2.1 x64
JDK环境:JDK 1.8.0_301。
Scala: scala-2.12.11
【实验内容】
该统计手机流量模块主要有以下四个需求:统计手机的上行流量、下行流量、总流量功能,将统计结果根据手机归属地不同存储在不同文件当中功能等两个功能。本模块的功能点结构图如下图所示:
本次实验项目的目录结构如下图所示:
【实验步骤】
本实验的主要步骤如下:
- 环境准备
- 使用Scala实现统计每一个手机号耗费的总上行流量、下行流量、总流量功能
- 使用Scala实现将统计结果按照手机归属地不同号段(手机号前3位)输出到不同文件中
- 使用Scala实现在需求1)的基础上再次对总流量进行排序的功能
- 使用Scala实现在要求2)的基础上每个手机号段输出的文件中按照总流量内部排序的功能
具体步骤如下所述:
1. 环境准备
(1) 创建maven工程:
(2) 在pom.xml文件中添加相关依赖:
(3) 添加可以将scala代表编译成class文件的插件
(4) 在项目中添加scala扩展
(5) 增加项目的框架支持
2.使用Scala实现统计每一个手机号耗费的总上行流量、下行流量、总流量功能
(1)查看输入的数据格式
发现输入的数据中,每行字符串之间以“ ”为间隔隔开,且我们要取的字符为以“ ”切割后的第二个字符和倒数第二,第三个字符。