什么是迭代器和集合?这两个有关系吗?
// the interface definition Interface Iterator { boolean hasNext(); Object next(); // note "one-way" traffic void remove(); } // an example public static void main (String[] args){ ArrayList cars = new ArrayList(); for (int i = 0; i < 12; i++) cars.add (new Car()); Iterator it = cats.iterator(); while (it.hasNext()) System.out.println ((Car)it.next()); }
接口迭代器是否只预定义了这些方法名称,还是用户定义了这些方法名称?下面的这四行实际上说明了什么?
cars.add (new Car()); Iterator it = cats.iterator(); while (it.hasNext()) System.out.println ((Car)it.next());
谢谢。我正在看一本藏书。
顾名思义,Java集合是事物的集合。如果您不知道该单词,请在字典中查找。
有很多类型的集合。以集合的数学概念为例。您可以将任意事物放入集合中,但是永远不会包含同一事物。在集中的东西是没有顺序的,那就是你不能说 A B之前时 。集合的另一种类型是列表。列表可以包含同一事物多次,并且列表中事物的顺序很重要。
所有这些集合的共同点在于它们包含事物,在Java中将其称为 elements 。当您想知道某个集合中的内容时,可以 遍历 该集合,这只是 遍历 所有元素的另一个术语。这是做什么的Iterator。它基本上从集合的开头开始,您始终可以询问是否存在下一个元素(hasNext()),如果存在,则可以访问该元素(next()),直到遍历集合中的所有元素为止。
Iterator
hasNext()
next()