JAVA英文分析程式

俗话说:不学一万英文单词,外国人是无法了解英语的。在2020年长江白鲟已经灭绝了,学习英语时不可待。作为一名技术落后的程序员,同样抱帚守珍般地对编程有一份热爱。程序用C#做了一个简单的英文分析程序,其实就是线性思维,可惜做操作系统的时候删除了。那么英文单词分词程序分几步呢?

1、读取一份存放英文文章的文件。

2、去除标点符号,分割空格。

3、单词去重。

4、GUI显示。

如果再进一步做个"背单词“小程序,那么还要做个随机程式。

5、随机程式

以下就1、2、3、5点做些示例程序。

1.读文件

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class ReadText{
	private static BufferedReader reader;
	public  static void main(String[] args){
	try{
		reader = new BufferedReader(new InputStreamReader(new FileInputStream(new File("1.txt"))));
		while(reader.read()!=-1){
			System.out.println(reader.readLine());
		}
	  
	}catch(IOException e){
		e.printStackTrace();
	}finally{
	try{
		reader.close();
	}catch(IOException e){
		e.printStackTrace();
	}
	}
	}
}

2.分割空格

import java.Exception;
public class SplitLine{
	public static void main(String[] args){
	try{
		String str=args[0];
		String[] strArray=str.split(" ");
		for(String item : strArray){
			System.out.println(item);
		}
	    }catch(Exception e){
			e.printStackTrace();
			System.out.println("java SplitLine \"字符串\"");
	    }
	}
}

3.Set集合

import java.util.*;
public class WordCollection{
	public static void main(String[] args){
		HashSet<String> set =new HashSet<>();
		String[] strArray=new String[]{"8","8","10","1","5","6","3"};
		for(int i=0;i<strArray.length;i++){
			set.add(strArray[i]);
		}
		for (String s : set) {
			System.out.println(s);
		}
	}
}

5.随机函数

import java.util.Random;
public class RandomNumber{
	public static void main(String[] args){
	int a1,a2,b,c1,c2;
	int i=0;
	int remainder=6;
	do{
	Random random=new Random();
	a1=random.nextInt(10)%remainder;
	System.out.println(a1);
	a2=random.nextInt(10)%remainder;
	System.out.println(a2);
	b=random.nextInt(10)%remainder;
	System.out.println(b);
	c1=random.nextInt(10)%remainder;
	System.out.println(c1);
	c2=random.nextInt(10)%remainder;
	System.out.println(c2);
	}while(i<=1);
	}
}

猜你喜欢

转载自blog.csdn.net/lihongtao8209/article/details/103820636