三种读取HashMap的方式

package com.biubiu.entity;

import java.util.Collection;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Map.Entry;

import java.util.Set;

public class HashMapTest {  

public static void main(String[] args) {

  // map 是一种接口 通过HashMap实现map集合类

  // 键 值 键可以理解为内容的标题 值可以理解为内容  

 Map<String, DOG> map = new HashMap<String, DOG>();  

 DOG dog1 = new DOG("叮叮", 98, 100, "雄");

// 创建DOG对象

  DOG dog2 = new DOG("啦啦", 95, 99, "雄");   

DOG dog3 = new DOG("嘎嘎", 96, 95, "雄");  

 DOG dog4 = new DOG("哈哈", 97, 98, "雌");  

 // 将创建好的对象放入集合中  

 map.put(dog1.getName(), dog1);

  map.put(dog2.getName(), dog2);

  map.put(dog3.getName(), dog3);

  map.put(dog4.getName(), dog4);  

 //如果重复的话会进行覆盖   

//map.put(dog3.getName(),dog3)  

 System.out.println("第一种");   

// 通过键来实现集合的读取   

Set<String> key = map.keySet();

// 获取所有的键  

 for (String string : key) {// 循环  

  // 声明对象获取从集合中读取出来的内容  

  DOG dog = map.get(string);  

  System.out.println(dog.getName());// 输出名字  

 }   

System.out.println("第二种");  

 // Entry理解为实体 实体的键值是string和DOG =集合获取到的实体值  

 Set<Entry<String, DOG>> set = map.entrySet();

 for (Entry<String, DOG> entry : set)

{// 遍历  

  System.out.println(entry.getKey() + "   "      + entry.getValue().getSex());

  }      

System.out.println("第三种");

  //Collection是list和set的父类 使用Collection尝试

  Collection<DOG> Values=map.values();

//values指的是值   //获取迭代器  

 Iterator<DOG> iter=Values.iterator();  

 while (iter.hasNext()) {

//循环下一个如果有的话   

 DOG d=iter.next();//DOG接收到iter的文本内容   

 System.out.println(d.getName());//输出

      }

 }

}

原文地址:https://www.cnblogs.com/FenGzHaoKanG/p/7114777.html