统计历年6级真题及答案中单词出现频率

import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.PrintWriter;

import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;

public class CET6WORDS {
	public static void main(String[] args) throws Exception
	{
		int num=3;
		Scanner sc =new Scanner(new InputStreamReader(new FileInputStream("test.txt"),"UTF-8"));
		PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("CET6.out")));
		HashMap map=new HashMap();
		String s;
		while(sc.hasNext())
		{
			s=sc.next();
			if(s.length()<=num)
				continue;
			if(map.containsKey(s))
				map.put(s, map.get(s)+1);
			else map.put(s, 1);
				
		}
		
		List> infoIds =
			    new ArrayList>(map.entrySet());
		
		Collections.sort(infoIds, new Comparator>() {

			@Override
			public int compare(Entry o1,
					Entry o2) {
				
				return o2.getValue()-o1.getValue();
			}
		});
		
		out.println(num+"个字母以上的单词共有:"+infoIds.size());
		for(Map.Entry entry: infoIds)
		{
			out.println(entry.getKey()+"               "+entry.getValue());
		}
		out.close();
	}
}


统计历年6级真题及答案中单词出现频率_第1张图片

你可能感兴趣的:(java)