zoukankan      html  css  js  c++  java
  • 统计英文文章单词出现的频率

    package 统计英文字母出现频率;
    import java.io.*;
    import java.io.File.*;
    import java.util.Scanner;
    public class Collect {
      public static void readFileByChars(String fileName) {
             File file = new File(fileName);
             Reader reader = null;
             try {
              char [] value = new char[20];
              int [] amount = new int[20];
              for(int i = 0; i< 20;i++)
              { amount[i] = 0;}
              
                 reader = new InputStreamReader(new FileInputStream(file));
                 for(int i = 0;i < 20 ;i++)               
                   {value[i] = (char) reader.read();}
                
                 for(int j = 0 ;j < 20 ;j ++)
                 {
                  for(int k = j+1 ; k < 20 ; k++) {
                   if(value[k]==value[j]){
                    amount[j]++;
                   }
                   else if(value[j]==value[j+1]) {
                    j++;break;
                   }
                   else break;
                  }
                 }
                 int temp=0;
                 for(int i = 0;i < 20;i++)
                 {
                  for(int j = i+1 ; j < 20 ; j ++) {
                   if(amount[j]>amount[i]) {
                    temp = j;
                   }
                   else temp = i;
                  }
                 }
          
                 System.out.println("出现最多次数的字母:"+value[temp]+"其出现的次数:"+amount[temp]);  
                 reader.close(); 
             } catch (Exception e) {
                 e.printStackTrace();//抛异常
             }
            
      }
      public static void main(String args[]) {
       readFileByChars("file.txt");
      }
     
     
    存在的很大问题,对于读写文件,查了半天资料也刚刚了解,在网上找到了一段读取文件的代码,勉强看得懂。可以实现一个个字符保存到value数组中,但是对于重复的字符没有筛选功能,所以只能够实现统计单词出现的次数。但是对于重复的字符没有筛选功能,字符数组建多大也一直迷糊。至于出现的频率,我用amoun数组实现,但是存在一点小小的问题。对于数组的比较本来是一个很简单的循环问题,但是在这里不知道为什么实现的很慢,而且思维比较混乱。在这个程序的编写中,还向以往那样,没有模块化,没有用类来实现,还是用了一抹都在主函数里边实现,对于for循环语句用的次数太多,导致代码太复杂,运行很复杂。对于文件的操作这一块的内容,课后还要狠狠的下功夫,真是书到用时方恨少啊,代码到用时才发现自己什么都不会
  • 相关阅读:
    PHP中cookie和session
    php冒泡排序 快速 选择 插入 排序
    闲置U盘变身最强大路由器
    网络工程师(CCIE)面试题大搜集
    华为与思科交换机的差别及需要注意到地方
    CISCO VSS与HSRP、VRRP、RSTP对比分析
    BNC接口、RJ45、RJ48之间区别
    CCIE找工作的七大职业走向(转载)
    2层交换机与3层交换机之间到底有什么差别!
    CISCO 6500系列交换机  简介
  • 原文地址:https://www.cnblogs.com/zjl-0217/p/9775013.html
Copyright © 2011-2022 走看看