实验目的:使用Scanner类解析文件

我的目的······:上传一个运行没错结果错误但是我现在不想改但是又怕忘记的程序

Wordstatistic.java

import java.io.*;
import java.util.*;
public class wordstatistic{Vector<String> allWord,noSameWord;//构造函数  sFile file=new File("english.txt");Scanner sc=null;//声明Scanner sc,在后面【代码1】中创建该对象String regex;public wordstatistic() {allWord=new Vector<String>();noSameWord=new Vector<String>();regex="[\\s\\d\\p{Punct}]+";//regex是由空格、数字和符号(!"#%&'等)组成的正则表达式try{sc=new Scanner(file);sc.useDelimiter(regex);}catch(IOException exp){System.out.println(exp.toString());}}void setFileNama(String name){file=new File(name);try{sc=new Scanner(file);sc.useDelimiter(regex);}catch(IOException exp){System.out.println(exp.toString());}}public void wordstatistic(){try{while(sc.hasNext()){String word=sc.next();/*hasNext()和Next()效果其实是一样的,系统都会等待输入下一个字符,只是返回值不同,hasNext()会返回true,next()返回输入的字符*/allWord.add(word);if(noSameWord.contains(word))noSameWord.add(word);}}catch(Exception e){}}public  Vector<String>getAllWord(){return allWord;}public Vector<String>getNoSameWord(){return noSameWord;}
}

main.java

import java.util.*;
public class Main {public static void main(String[] args) {Vector<String>allWord,noSameWord;wordstatistic statistic=new wordstatistic();statistic.setFileNama("hello.txt");statistic.wordstatistic();allWord=statistic.getNoSameWord();//getallWord如何定义?noSameWord=statistic.getNoSameWord();System.out.println("共有"+allWord.size()+"个英文单词");System.out.println("有"+noSameWord.size()+"个互不相同的英文单词");System.out.println("按出现频率排序:");int count[]=new int[noSameWord.size()];for(int i=0;i<noSameWord.size();i++){String s1=noSameWord.elementAt(i);for(int j=0;j<allWord.size();j++){String s2=allWord.elementAt(j);if(s1.equals(s2))count[i]++;}}for(int m=0;m<noSameWord.size();m++){for(int n=m+1;n<noSameWord.size();n++){if(count[n]>count[m]){String temp=noSameWord.elementAt(m);noSameWord.setElementAt(noSameWord.elementAt(n), m);noSameWord.setElementAt(temp, n);int t=count[m];count[m]=count[n];count[n]=t;}}}for(int m=0;m<noSameWord.size();m++){double frequency=(1.0*count[m]/allWord.size());System.out.printf("%s:%-7.3f",noSameWord.elementAt(m),frequency);/*print\println\printf的区别print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。printf是格式化输出的形式。* * System.out.printf("the number is: d",t);
参照JAVA API的定义如下:
'd' 整数结果被格式化为十进制整数
'o' 整数结果被格式化为八进制整数
'x', 'X' 整数结果被格式化为十六进制整数
'e', 'E' 浮点结果被格式化为用计算机科学记数法表示的十进制数
'f' 浮点结果被格式化为十进制数
'g', 'G' 浮点根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化。
'a', 'A' 浮点结果被格式化为带有效位数和指数的十六进制浮点数
*/}}
}

实验结果(错误的):

实验感想:

不想干了!脖子疼,就是个废柴。一开始连printf跟print都分不出来,后来还忘记创建getAllWord()函数,呵呵

第十章 实验二 统计英文单词相关推荐

  1. PTA | 实验二 统计英文字母和数字字符[2]

    本题要求编写程序,输入N个字符,统计其中英文字母.数字字符和其他字符的个数. 输入格式: 输入在第一行中给出正整数N,第二行输入N个字符,最后一个回车表示输入结束,不算在内. 输出格式: 在一行内按照 ...

  2. 实验二 词频统计软件项目报告

    实验要求 实验二 软件工程个人项目 GitHib链接 https://github.com/Z-zt/Count 一.需求分析 通过分析实验二题目要求,得出的用户需求主要为: 程序可读入任意英文文本文 ...

  3. 计算机硬件数据统计实验报告,实验二数据统计.docx

    实验二数据统计.docx 南京航空航天大学电工电子实验中心实验报告课程名称计算机硬件技术基础实验名称数据统计姓名学号评定成绩审阅教师实验时间20170502南京航空航天大学南京航空航天大学一.实验目的 ...

  4. 201671010434王雯涵--实验二 软件工程个人项目

    作业要求:实验二 软件工程个人项目 本项目完成的代码 1.软件定义 ※程序可读入任意英文文本文件,该文件中英文词数大于等于1个,统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件r ...

  5. 201671010412 郭佳 实验二 软件工程个人项目

    作业要求:<实验二 软件工程个人项目> 本项目Github的仓库主页 1. 需求分析 本次实验要求使用JAVA编程语言,独立完成一个英文文本词频统计的软件开发. 该程序要求实现: 要求能够 ...

  6. 【通信原理】【实验】实验二:数字基带传输实验(GZHU)

    文章目录 实验二:数字基带传输实验 信源为长度N=1000的随机"0","1"序列,发送端符号速率RB=1000Baud 采用双极性编码: x = randi( ...

  7. 算法设计原则验证实验报告_算法设计与分析实验报告 统计数字问题

    一 . 实验要求 1 .掌握算法的计算复杂性概念. 2 .掌握算法渐近复杂性的数学表述. 3 .掌握用 C++ 语言描述算法的方法. 4 .实现具体的编程与上机实验,验证算法的时间复杂性函数. 二 . ...

  8. 数据结构实验二 树和二叉树的实现

    广州大学学生实验报告 开课实验室:计算机科学与工程实验(电子楼418A)     2019年5月13日 学院 计算机科学与教育软件学院 年级.专业.班 计算机科学与技术172班 姓名 学号 17061 ...

  9. 数据库实验二 SQL语言

    实验二 SQL语言 实验目的 熟悉并掌握创建表,插入记录,查询记录,删除记录,修改记录. 创建索引,删除索引. 创建视图,使用视图,删除视图. 实验内容 现有一个单位内部的小型图书借阅系统,假设每本图 ...

最新文章

  1. 比特币现金成为第二个最有价值的区块链
  2. java中运用抽象_如何学会java中的抽象应用
  3. c++:MFC中sqlite3的使用(附实际案例)
  4. 学习一门编程语言的基本步骤
  5. 用Web Developer工具栏发现SEO问题的方法
  6. Nginx+Tomcat负载均衡群集
  7. 「代码随想录」416. 分割等和子集【动态规划】力扣详解!
  8. SQL知识点脑图(一张图总结SQL)
  9. 计算机管理键盘驱动一直黄标,教你键盘驱动程序显示黄色感叹号的处理办法
  10. ISO 2768-2 标准
  11. Redis解决高并发问题
  12. 2022年Cs231n PPT笔记-训练CNN
  13. 用js实现建议绘图板
  14. 达梦企业管理器DEM的安装部署
  15. Win10深度学习环境配置(CUDA+cuDNN+TensorFlow-gpu+Keras)
  16. ansible dnf模块详解
  17. CSS使用彩色字体图标(Vue/Uni)
  18. 怎么看待《百度清风算法3.0》?
  19. 没学过量子力学,物理学也是一团糟,不过我觉得这个故事很有意思
  20. 5G 的三大应用场景——ITU-R原文

热门文章

  1. php 长微博程序,php仿照新浪微博长微博分页功能
  2. ESA SNAP水色反演算法在GEE中的实现
  3. GEEer成长日记九:Worldpop100m分辨率人口数据可视化及批量下载
  4. HTPC知识普及第四讲:解码需软硬兼施2
  5. 关于社交的书籍推荐,这本书最实用
  6. 2013我国软件业务收入百强企业揭晓 华为夺冠 (zz)
  7. Towards a Rigorous Evaluation of Time-series Anomaly Detection综述
  8. 面向数据安全治理的数据内容智能发现与分级分类 A榜rank7 B榜rank10
  9. 内容推荐等于Low?
  10. xDeepFM论文解读(KDD2018)