java中怎么遍历HashMap


  一.

  HashMap staff = new HashMap();

  增加 要害字值对,自己写遍历

  Set entries = staff.entrySet();

  Iterator iter = entries.iterator();

  while(iter.hasNext())

  {

   Map.Entry entry = (Map.Entry)iter.next();

   Object key = entry.getKey();得么 要害字

   Object value = entry.getValue();得到值

  }

  二.

  Map map = new HashMap();

  for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) {

   Map.Entry entry = (Map.Entry) iter.next(); //map.entry 同时 存入键值对

   Object key = entry.getKey();

   Object val = entry.getValue();

  }

  三.

  Map map = new HashMap();

  for (Iterator iter = map.keySet().iterator(); iter.hasNext();) {

   Object key = iter.next();

   Object val = map.get(key);

  }

  Iterator是迭代器

  关于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中 存入key所关于的value 。

  而entryset只不过遍历了第一次,他把key和value都放到了entry中,所以就快了 。

  关于我们做web的,可能不 部分都是用vo对象或是form封装信息,所以用到hashmap时,其内 存放的都是上面的对象 。 因此 使用entryset遍历性能会有所 普及 。

  hashmap 使用众多, 比方导入信息时就要用到,因大 部分导入的信息要去推断是不是有 反复的信息,这样就 可以利用containsKey来进行 解决了,而不用在插入的时候去进行 解决 。