码迷,mamicode.com
首页 > 编程语言 > 详细

java 以a为开头单词的词典查询示例

时间:2017-10-13 11:13:52      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:文本文件   运行   can   对象   ati   思路   因此   main   存储   

java中HashMap类表示为字典类,其中key,value一一对应的原则。因此是词典查询的首要工具。(HashMap字典类字面意思也可以看出~~)

程序思路:

程序开始前,应先创建一个字典文本用于单词词库的存储。

先读取文本文件,因为每行为一个单词和其释义,所以采用逐行读取的方法。

将每行的单词和释义分隔开,将前后两部分分别存入HashMap对象当中。

最后输入查询单词,在key中查找关键词即可获取释义。

代码如下:

import java.io.*;
import java.util.*;
public class Hash_map {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        File fi=new File("dict.txt");
        try {
            BufferedReader dict=new BufferedReader(new InputStreamReader(new FileInputStream(fi)));
            String line_text="";
            String unknow;
            HashMap find_word=new HashMap();
            int i=0;
            while(i<562){
                line_text=dict.readLine();
                //System.out.println(line_text);
                String[] _map=line_text.split(" ");
                //System.out.println(_map[0]+_map[_map.length-1]);
                find_word.put(_map[0], _map[_map.length-1]);                
                i+=1;
            }
            System.out.println("查询首字母为a的单词!当输入为q时推出程序!");
            System.out.println("输入要查找的单词:");
            unknow=in.next();
            while(unknow.equals("q")==false){
                System.out.println(find_word.get(unknow.toLowerCase()));
                System.out.println("输入要查找的单词:");
                unknow=in.next();
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        System.out.println("查询结束!");
        word_up_find();
    }
    public static void word_up_find(){
        Scanner in=new Scanner(System.in);
        int count=0;
        System.out.println("判断字符串中大写字母的个数!以输入q结束");
        String word=in.next();
        while(word.equals("q")==false){
            char[] st=word.toCharArray();
            for(int i=0;i<st.length;i++){
                if(st[i]>=‘A‘&&st[i]<=‘Z‘)
                    count+=1;
        }
            System.out.println(count);
            System.out.println("输入要判断的单词:");
            word=in.next();
        }
        System.out.println("判断结束!");
        
        
    }
}

在dos窗口中运行,如图:

技术分享

 

java 以a为开头单词的词典查询示例

标签:文本文件   运行   can   对象   ati   思路   因此   main   存储   

原文地址:http://www.cnblogs.com/xsmile/p/7660052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!