map小节

很多时候我们在遇到map遍历时,我们首先会想到的是用for循环一个一个的遍历,但有没有想过用迭代器Iterator呢?

下面是一个用Iterator遍历map的例子

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

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

  String key = (String) entry.getKey();

  String value = (String ) entry.getValue();

}

可能大家觉得这没什么,还得申请Iterator,并不值得。
先了解一下Iterator的原理吧

迭代器的基本原理:
      由于不同集合的数据结构不同,取出元素方式不同。
      为了方便于对每一个容器进行取出的操作,对容器进行共性的抽取。

好处:降低了数据结构的耦合性。

iterator的特点是:将遍历一个序列的操作与此序列底层结构香分离.
  Iterator隐藏了容器底层的结构.
迭代器是一个对象,它的工作是遍历并选择序列中的对象,而客户端程序员不必知道或关心该序列底层的结构.而且创建它的代价小.

你可能感兴趣的:(map)