首先,创建一个HashMap集合,添加两个元素。
HashMap <Integer,Book> map=new HashMap();
map.put(1,new Book("百年孤独","马尔克斯"));
map.put(2,new Book("瓦尔登湖","卢梭"));
一、加强for循环遍历
for (int x:map.keySet()) {//keySet获取 map集合中的 键值得集合 遍历时使用键来获取值
System.out.println(map.get(x));//值为对象 该类重写了toString方法所以打印的不是地址
}
for (Book book:map.values()) {//获取值的集合
System.out.println(book);
}
for (Map.Entry entry:map.entrySet()) {
System.out.println(entry.getKey()+" : "+entry.getValue());
}
二、迭代器遍历
Iterator<Integer> iter=map.keySet().iterator();//迭代器迭代map集合的键的集合 键的类型 为Integer
while(iter.hasNext()){
System.out.println(map.get(iter.next()));
}
Iterator<Book> iter1=map.values().iterator();//迭代器迭代map的值
while(iter1.hasNext()){
System.out.println(iter1.next());
}
Iterator<Map.Entry<Integer,Book>> bian=map.entrySet().iterator();
while(bian.hasNext()){
Map.Entry<Integer,Book> entry= bian.next();
System.out.println(entry.getKey()+" : "+entry.getValue());
}