英语单词统计(现未完成)

经过学习 因为仓促 代码还不能完成

  1 package 英语单词统计;
  2 import java.io.BufferedReader;
  3 import java.io.IOException;
  4 import java.io.PrintWriter;
  5 import java.util.Scanner;
  6 import java.math.BigDecimal;
  7 import java.util.StringTokenizer;
  8 import java.io.File;
  9 import java.io.FileNotFoundException;
 10 import java.io.FileReader;
 11 /*import java.io.File;
 12 import java.io.FileNotFoundException;
 13 import java.io.FileReader;
 14 */
 15 class Word
 16 {
 17     String value;//具体单词
 18     int num;//出现的个数
 19     Word next;
 20     public Word(String value,int geshu)
 21     {
 22         this.value=value;
 23         this.num=num;
 24         next=null;
 25     }
 26     public Word()        //空函数
 27     {
 28         this.value="";
 29         this.num=0;
 30         next=null;
 31     }
 32 }
 33 public class E_T {
 34     
 35     public static void main(String[] args)throws IOException//扔掉很重要
 36 {
 37     System.out.println("本次将统计《哈利波特》的字数");//1,输入三个文本2,重点学习文本文档的进入和读取3,重点学习文本文档的输出
 38     Word word=new Word();//制造一个链表头
 39     Word lian,xin;
 40     String str="";
 41     
 42     FileReader file=new FileReader("E:\\eclipse-workspace\\2.0\\src\\英语单词统计\\Harry Potter.txt");//读取英文文件
 43     char[] c=new char[1];
 44     int b=0;
 45     boolean exist=false;
 46     while((b=file.read(c))!=-1)//读取到最后一个
 47     {//空格 换号 逗号 句号 引号 
 48         if(String.valueOf(c).equals("\r")||String.valueOf(c).equals("\n")||String.valueOf(c).equals(",")||String.valueOf(c).equals(".")||String.valueOf(c).equals(":"))
 49         {
 50             lian=word;
 51             while(lian!=null)//链表不为空
 52             {
 53                 if(lian.value.equalsIgnoreCase(str))//单词在单词链中存在++
 54                 {
 55                     lian.num++;exist=true;break;
 56                 }
 57                 else
 58                 {
 59                     lian=lian.next;
 60                 }
 61             }
 62             if(exist==false)
 63             {
 64                 xin=new Word(str,1);
 65                 xin.next=word.next;
 66                 word.next=xin;
 67                 str="";
 68             }
 69             else
 70             {
 71                 exist=false;
 72                 str="";
 73             }
 74         }
 75         else
 76         {
 77             str+=String.valueOf(c);
 78         
 79         }
 80 }
 81     for(int i=1;i<=10;i++)
 82     {
 83         xin=new Word("",0);
 84         lian=word.next;
 85         while(lian!=null)
 86         {
 87             if(lian.num>xin.num)
 88             {
 89                 xin=lian;
 90             }
 91             lian=lian.next;
 92         }
 93         System.out.println("第"+i+"个:"+xin.value+"个数:"+xin.num);
 94         lian=word;
 95         while(lian.next!=null)
 96         {
 97             if(lian.next.value.equalsIgnoreCase(xin.value))
 98             {
 99                 lian.next=lian.next;
100                 break;
101             }
102             lian=lian.next;
103         }
104     }
105     
106 }
107 }

猜你喜欢

转载自www.cnblogs.com/smartisn/p/9775548.html