在调用Iterator接口当中的next方法之前,迭代器的索引位于第一个元素之前,不指向任何元素,当第一次调用迭代器的next方法后,迭代器的索引会向后移动一位,指向第一个元素并将该元素返回。当再次调用next方法时,迭代器的索引会指向第二个元素并将该元素返回,以此类推,直到hasNext方法返回false时,表示迭代器达到了集合的末尾,终止对元素的遍历。如果强硬的再取集合的元素,此时程序就会抛出没有元素java.util.NoSuchElementException
备注:Iterator
在JDK1.5之后出现了一个新的循环结构,for each循环,一般也称为增强for循环,专门用来遍历数组和集合的。它的内部原理其实是有个迭代器Iterator,在迭代过程中,不能对集合当中的元素进行增删操作。
备注:泛型它其实也是数据类型的一部分,一般我们将类名和泛型合并一起看做数据类型。
? 泛型,用来灵活的将数据类型应用到不同的类、方法、接口当中。将数据类型作为参数进行传递。
因为我们的集合框架体系中,大量的使用了泛型。
原文:https://www.cnblogs.com/zlh109/p/14070522.html