迭代器在其實就是指針,讀取集合或者數組中的一個值,讀完以后又指向下一條數據。
iterator()
迭代器只讀,不能改效率要比for循環高
迭代器的一些方法:
HasNext() 如果仍有元素可以迭代,則返回 true Next()返回迭代的下一個元素(取值) remove()從迭代器指向的 collection 中移除迭代器返回的最后一個元素
用法:
Set集合中無法用get查詢,我們可以用迭代器
import java.util.*; public class Set練習 { public static void main(String[] args) { Set<String> s=new HashSet<String>(); //創建一個Set集合 s.add("你好"); //插入 s.add("早上好"); s.add("我們一起玩吧"); s.add("好啊"); Iterator it=s.iterator(); //生成一個迭代器,並賦值給it while(it.hasNext()==true){ //while循環 迭代器的方法。如果仍有元素可以迭代則返回true 這里的==true可以省略 Object obj=it.next(); //取出里面的對象,並賦值給obj System.out.println(obj); //輸出obj } } }
在List集合中也可以使用
import java.util.*; public class List練習 { public static void main(String[] args) { List<String> l=new ArrayList<String>(); //創建一個List集合 l.add("你好"); //插入 l.add("你叫什么名字"); l.add("你多大了"); Iterator it = l.iterator(); //建立一個迭代器,並賦值給it while (it.hasNext()) { //while循環,當所有的元素走完則停止 Object obj=it.next(); //將每次迭代中獲取的元素賦值給obj並打印 System.out.println(obj); } } }