完成一个类似字典的功能。
--将单词以及单词的注释存储到HashMap中
--显示HashMap中的内容
--查找某个单词的注释并显示。
注意:要求比较简单,只实现了输入,输出,查询。这个歌案例中,学习的是定义HashMap 定义entry
#在建animal对象,使用hashmap时,要用泛型规定类型。
Map <String, String> animal = new HashMap <String, String>();
#迭代器要用泛型定义,把值放入迭代器
Iterator <String> it = animal.values().iterator();
#在将animal对象的键值对形成entry,然后定义好集合的entry类型
这里必须定义,不然下面的for循环不好使用。
Set <Map.Entry <String, String>> entrySet = animal.entrySet();
for (Map.Entry <String, String> entry : entrySet) {
System.out.print(entry.getKey() + " - ");
System.out.println(entry.getValue());
}
代码如下:
package com.imooc.set;
import java.security.KeyStore;
import java.util.*;
public class DictionaryDemo {
public static void main(String[] aargs) {
Map <String, String> animal = new HashMap <String, String>();
System.out.println("请输入3组单词对应的注释,并存放到HashMap中");
Scanner consol = new Scanner(System.in);
//添加数据
int i = 0;
while (i < 3) {
System.out.println("请输入key值(单词):");
String key = consol.next();
System.out.println("请输入value值(注释):");
String value = consol.next();
animal.put(key, value);
i++;
}
//打印输出value的值
System.out.println("*************************");
System.out.println("使用迭代器输出所有value:");
Iterator <String> it = animal.values().iterator();
while (it.hasNext()) {
System.out.print(it.next() + " ");
}
//打印输出key和value
System.out.println();
System.out.println("*************************");
//通过entrySet方法去完成
System.out.println("通过entrySet方法得到key - value");
Set <Map.Entry <String, String>> entrySet = animal.entrySet();
for (Map.Entry <String, String> entry : entrySet) {
System.out.print(entry.getKey() + " - ");
System.out.println(entry.getValue());
}
System.out.println("*************************");
//通过单词找到注释并输出
//使用keySet方法
System.out.println("*****请输入要查找的单词****");
String strSearch=consol.next();
//1、取得keySet
Set <String> keySet=animal.keySet();
//2、遍历keySet
boolean result = false;
for(String key:keySet){
if(strSearch.equals(key)){
System.out.println("找到了!"+" 键值对为: "+key+" - "+ animal.get(key));
result=true;
break;
}
}
if (result==false){
System.out.println("没找到");
}
}
}
感谢慕课网