今天花了一些时间写了Map遍历的几种方法,比较了各个方法的运行效率,本来想把各个遍历方法的运行效率(时间比较)贴出来的,但是运行的时候外部影响较多所以就没有贴出实际的测试运行数据。这些信息对我们还是有很大帮助的,因为当我们做大型软件开发的时候代码优化、SQL优化及其重要,这个时候就离不开从可以中选择最优的一种方法来实现需求;在写的时候我也有些不知道,不知道的我都是通过JavaAPI来查阅相关的资料,查阅过按理解写了代码之后就会啦!O(∩_∩)O哈哈~API是个好东西哦!大家好好利用。这些分享希望对大家有所帮助。
1、Iterator
-
public interface Iterator<E>
对 collection 进行迭代的迭代器。迭代器取代了 Java Collections Framework 中的 Enumeration。迭代器与枚举有两点不同:
a:迭代器允许调用者利用定义良好的语义在迭代期间从迭代器所指向的 collection 移除元素。
b:方法名称得到了改进。
-
方法摘要:标红色的为常用
|
|
---|---|
|
boolean hasNext() 如果仍有元素可以迭代,则返回 true。 |
|
E next() 返回迭代的下一个元素。 |
|
void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。 |
2、Map
-
Map接口中键和值一一映射. 可以通过键来获取值。
-
a:给定一个键和一个值,你可以将该值存储在一个Map对象. 之后,你可以通过键来访问对应的值。
-
c:当访问的值不存在的时候,方法就会抛出一个NoSuchElementException异常.
-
d:当对象的类型和Map里元素类型不兼容的时候,就会抛出一个 ClassCastException异常。
-
e:当在不允许使用Null对象的Map中使用Null对象,会抛出一个NullPointerException 异常。
-
f:当尝试修改一个只读的Map时,会抛出一个UnsupportedOperationException异常。
-