Java中Iterator(迭代器) 与Collection(集合)用法与区别
迭代器(Iterator)
它在CollectionFramework中使用,以便在需要时检索元素。
public interface Iterator
它可以与“next”函数一起使用,以移动和访问下一个元素。“remove”函数可用于从数据结构中删除元素。
与Collections相比,它更快,因为与Iterator关联的操作数量更少。
以下是使用列表的迭代器的示例-
示例
mport java.io.*; import java.util.*; public class Demo{ public static void main(String[] args){ ArrayList<String> my_list = new ArrayList<String>(); my_list.add("Its"); my_list.add("a"); my_list.add("sample"); Iterator iterator = my_list.iterator(); System.out.println("该列表包含以下元素 : "); while (iterator.hasNext()) System.out.print(iterator.next() + ","); System.out.println(); } }
输出结果
该列表包含以下元素: Its,a,sample,
名为Demo的类包含主要函数。在这里,定义了一个新的数组列表,并使用“add”函数将元素添加到其中。定义了一个迭代器,并在数组列表中对其进行迭代,然后对元素进行一个接一个的迭代,然后将其打印在控制台上。
集合(Collection)
public interface Collection<E> extends Iterable<E>
在此,E表示将要返回的元素的类型。集合框架用于定义不同的类和接口,这些类和接口将用于将一组对象表示为单个实体。
集合可以使用“add”函数、“iterate”函数、“remove”函数和“clear”函数分别添加元素、逐个迭代元素、移除元素或清除整个结构。
让我们看一个例子-
示例
import java.io.*; import java.util.*; public class Demo{ public static void main (String[] args){ int my_arr[] = new int[] {56, 78, 90}; Vector<Integer> my_vect = new Vector(); Hashtable<Integer, String> my_hashtab = new Hashtable(); my_vect.addElement(0); my_vect.addElement(100); my_hashtab.put(0,"sample"); my_hashtab.put(100,"only"); System.out.print("数组中的第一个元素是 "); System.out.println(my_arr[0]); System.out.print("向量中的第一个元素是 "); System.out.println(my_vect.elementAt(0)); System.out.print("哈希表中的第一个元素是 "); System.out.println(my_hashtab.get(0)); } }
输出结果
数组中的第一个元素是 56 向量中的第一个元素是 0 哈希表中的第一个元素是 sample
名为Demo的类包含Main函数。这里定义了一个新的整数数组,并向其中添加了元素。现在定义了一个新的Vector,以及一个Hashtable。使用‘addElement’函数将元素添加到向量。使用‘put’函数将元素添加到哈希表。所有三个结构的元素都打印在控制台上。