设计统计英文字母出现频率的程序的感想

摘要:
在今天下午学习Java的过程中,王先生给我们留下了一项编程作业。要求是我们设计一个程序,在一个文件中输出前N个最常见的英语单词,并将结果输入到文本文件中。我花了一个下午的时间在电脑上思考,终于实现了一些功能。首先,当我看到这个话题时,我想到将实验分为三个部分:1。阅读指定文本的内容;2.统计文本中所有单词的出现次数;3.将结果输入到指定文本中。

  今天下午我们在学习Java的过程中,王老师给我们留下了一个程序设计作业,其要求是让我们设计一个程序,要实现 输出单个文件中的前 N 个最常出现的英语单词,并将结果输入到文本文件中的功能。我思考并上机了一个下午最终实现了部分功能。

  首先当看到这个题目的时候,我想到了将这个实验分成三部分:

  1.读取指定文本的内容;

  2.统计所有单词在该文本中的出现次数;

  3.将结果输入到指定文本。

  经过下午上机的努力,我仅仅实现了第一个功能。后来经过求助我的舍友,完成了第二个功能。第三个功能尚未实现。

  实验源码如下:

  

package yingwen;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class yingwen {
 private int num[]=new int[52];
 public void readTxt(String filePath) {
  try {
   File file = new File(filePath);
   if(file.isFile() && file.exists()) {
    InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
    while(isr.ready())
    {
     char c=(char)isr.read();
     if(c>='a'&&c<='z')
     {
      ++num[(int)(c-'a')];
     }
     else if(c>='A'&&c<='Z')
     {
      ++num[(int)(c-'A')];
     }
    }
    isr.close();
   } else {
    System.out.println("文件不存在!");
   }
  } catch (Exception e) {
   System.out.println("文件读取错误!");
  }
 }
 public int[] num1()
 {
  return num;
 }
 public static void main(String[] args) {
  String filePath = "E:\Yingwen\English.txt";
  yingwen a=new yingwen();
  a.readTxt(filePath);
  int num[]=a.num1();
  for(int i=0;i<52;i++)
  {
   if(i<=25)
    System.out.println((char)(i+'a')+" "+num[i]);
   else System.out.println((char)(i+'A'-26)+" "+num[i]);
  }
 }
}
设计统计英文字母出现频率的程序的感想第1张

免责声明:文章转载自《设计统计英文字母出现频率的程序的感想》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JS批量替换内容中关键词为超链接,避开已存在的链接和alt、title中的关键词codeblocks-17.12mingw-nosetup(mingw编译,绿色免安装版)的下载、安装及设置一下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

通过尾递归避免栈溢出

JavaScript中的递归即函数内调用函数自身,但递归是非常耗内存的,每一次调用都会分配一定的栈空间,达到一定的数量(具体看浏览器)便会溢出报错。 function recursion (num) { if (num === 1) { return 1; } return num + recursion(--num...

[源码解析] PyTorch 分布式(16) 使用异步执行实现批处理 RPC

[源码解析] PyTorch 分布式(16) --- 使用异步执行实现批处理 RPC 目录 [源码解析] PyTorch 分布式(16) --- 使用异步执行实现批处理 RPC 0x00 摘要 0x01 前言 1.1 先决条件 1.2 基础知识 1.3 代码 0x02 启动 2.1 总体启动 2.2 启动参数服务器 0x03 参数服务器...

.net 多线程的使用(Thread)

 上篇 net 同步异步   中篇 多线程的使用(Thread)   下篇 net 任务工厂实现异步多线程 Thread多线程概述  上一篇我们介绍了net 的同步与异步,我们异步演示的时候使用的是委托多线程来实现的。今天我们来细细的剖析下 多线程。 多线程的优点:可以同时完成多个任务;可以使程序的响应速度更快;可以让占用大量处理时间的任务或当前没有进...

1034 Head of a Gang (30 分)(图的遍历or并查集)

dfs #include<bits/stdc++.h> using namespace std; const int N=3000; int mp[N][N]; int weight[N]; int vis[N]; map<string,int>si; map<int,string>is; map<string...

强化学习框架RLlib教程002:Training APIs(一)快速入门与配置项

目录   开场(Getting Started)   评估训练策略(Evaluating Trained Policies)   指定参数(Specifying Parameters)   指定资源(Specifying Resources)   延伸指南(Scaling Guide)   常用参数   调好的参数文件(Tuned Exampl...

grep用法小结

grep 选项注解 NAMEgrep, egrep, fgrep - print lines matching a patternSYNOPSISgrep [options] PATTERN [FILE...]grep [options] [-e PATTERN | -f FILE] [FILE...]-A NUM --after-context=NUM除...