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

程序思路:

  1. 程序开始前,应先创建一个字典文本用于单词词库的存储。
  2. 先读取文本文件,因为每行为一个单词和其释义,所以采用逐行读取的方法。
  3. 将每行的单词和释义分隔开,将前后两部分分别存入HashMap对象当中。
  4. 最后输入查询单词,在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("查询结束!");
}
}

在dos窗口中运行,如图:

java 以a为开头单词的词典查询示例的更多相关文章

  1. 用Java实现异构数据库的高效通用分页查询功能

    不同数据库的分页查询语句有着较大区别,其中MySQL数据的limit offset语法最为简单,而SQL Server数据库和Oracle数据库的分页就比较复杂了. 网上常见的SQL Server和O ...

  2. 转:java多线程CountDownLatch及线程池ThreadPoolExecutor/ExecutorService使用示例

    java多线程CountDownLatch及线程池ThreadPoolExecutor/ExecutorService使用示例 1.CountDownLatch:一个同步工具类,它允许一个或多个线程一 ...

  3. 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例

    019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...

  4. java翻转字符串中的单词

    效果: 输入: "java and python" 输出: "avaj dna nohtyp" 代码: 版本1: 不考虑字符串开头有空格,单词间有多个空格空格的 ...

  5. JAVA实验--统计文章中单词的个数并排序

    分析: 1)要统计单词的个数,就自己的对文章中单词出现的判断的理解来说是:当出现一个非字母的字符的时候,对前面的一部分字符串归结为单词 2)对于最后要判断字母出现的个数这个问题,我认为应该是要用到ma ...

  6. java必会的英语单词

    Java开发常用英语单词表   第一章:public['pʌblik] 公共的,公用的static['stætik] 静的;静态的;静止的void:[vɔid] 空的main:[mein] 主要的 重 ...

  7. java编程中常用英语单词

    JAVA 省略语与名词解释 -------------------------------- J2EETM----JavaTM 2PlatformEnterpriseEdition : J2EE(JA ...

  8. Java实现 LeetCode 318 最大单词长度乘积

    318. 最大单词长度乘积 给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母.你可以认为每个单词只包含小 ...

  9. java字符串根据正则表达式让单词首字母大写

    public class Da { public static void main(String[] args) { String s = "hello_*java_*world" ...

随机推荐

  1. httpd2.2配置文件详解

    httpd2.2官方配置手册:http://httpd.apache.org/docs/2.2/ 注意:关闭防火墙,iptables规则 vim /etc/sysconfig/selinux SELI ...

  2. Day4 闭包、装饰器decorator、迭代器与生成器、面向过程编程、三元表达式、列表解析与生成器表达式、序列化与反序列化

    一.装饰器 一.装饰器的知识储备 1.可变长参数  :*args和**kwargs def index(name,age): print(name,age) def wrapper(*args,**k ...

  3. ZOJ2185 简单分块 找规律

    初步找大概位置,然后找精确位置,算是简单化的分块吧! #include<cstdio> #include<cstdlib> #include<iostream> u ...

  4. sql server作业实现数据同步

    作业介绍  SQL SERVER的作业是一系列由SQL SERVER代理按顺序执行的指定操作.作业可以执行一系列活动,包括运行Transact-SQL脚本.命令行应用程序.Microsoft Acti ...

  5. SVN版本控制图标经常延时显示或未显示问题解决方法

    项目中,使用svn经常遇到,文件或文件夹图标延时显示或未显示的问题,终于找到办法解决 客户端:TortoiseSVN

  6. redis性能调优笔记(can not get Resource from jedis pool和jedis connect time out)

    对这段时间redis性能调优做一个记录. 1.单进程单线程 redis是单进程单线程实现的,如果你没有特殊的配置,redis内部默认是FIFO排队,即你对redis的访问都是要在redis进行排队,先 ...

  7. C语言通过函数参数不能带出动态内存的例子。

    实验结论:通过函数参数不能带出动态内存,函数参数虽然为指针,其实是在函数内部的临时变量,只是该指针的初始值是通过调用函数赋值的.C语言函数参数都是传值的. #include <stdio.h&g ...

  8. H5新手快速入门 简单布局

    布局*{ margin: 0; padding: 0;}.quan{ width: 100%; height: 2000px; background: black url("../ima/b ...

  9. 验证代理IP

    ##author:wuhao#import urllib.requestfrom http import cookiejar import xlrd import threading #有效的代理,可 ...

  10. Pyquery API中文版

    Pyquery的用法与jQuery相同,可以直接参考jQuery API学习.