一、实验目的
本实验的目的是了解Java集合框架体系结,会使用ArrayList存取数据、会使用LinkedList存取数据、会使用Set和map存取数据
二、实验内容
新建一个程序,存储如下的数据到hashMap中:
Sue is friends with Bob, Jose, Alex, and Cathy
Cathy is friends with Bob and Alex
Bob is friends with Alex, Jose, and Jerry
存储完数据之后,允许用户输入一个名字,如果这个名字在这个hashMap中,则输出这个名字以及名字对应的朋友,如果不存在就输出一句名字不在hashMap中
三、实验结果
四、实验小结
本次实验在最开始的时候没能明白hashMap的键-值问题,一直纠结于怎么把各种人名独立分开,再遍历求解。经过仔细思考后发现没有必要独立开来。只需要把输入的人名存入一个字符串中,再和key比较,如果相等,则输出这个key对于的值就成功求解!
五、源码
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class MapDemo03 {
public static void main(String[] args) {
String str1 = "Sue is friends with Bob,Jose,Alex,and Cathy";
String str2 = "Cathy is friends with Bob and Alex";
String str3 = "Bob is friends with Alex,Jose,and Jerry";
Map friends = new HashMap();
friends.put("Sue", str1);
friends.put("Cathy", str2);
friends.put("Bob", str3);
System.out.println("输入要查询的名字:");
Scanner input = new Scanner(System.in);
String name = input.next();
int flag=0;
for (Object key : friends.keySet()) {
if(name.equals(key)){
System.out.println(friends.get(name));
flag=1;
}
}
if(flag==0)
{
System.out.println("名字不在hashMap中!");
}
}
}
网友评论