1.增強型for循環(for(類型 變量:需要循環的數組或集合))
①數組:
public class Test1 { public static void main(String[] args){ String[] arr = new String[5]; arr[0] = "a"; arr[1] = "b"; arr[2] = "c"; arr[3] = "d"; arr[4] = "e"; for(String s:arr){ System.out.println(s); } } }
結果:
②:list集合
public class Test1 { public static void main(String[] args){ List list = new ArrayList(); list.add("A"); list.add("B"); list.add("C"); list.add("C"); list.add("D"); for(Object l:list){ System.out.println(l); } } }
結果:
③:set集合
public class Test1 { public static void main(String[] args){ Set set = new HashSet(); set.add(5); set.add(9); set.add(3); set.add(6); set.add(6); for(Object l:set){ System.out.println(l); } } }
結果:(set集合有序不可重復的)
2、Iterator:(只適用於list set)
迭代器(Iterator)
迭代器是一種設計模式,它是一個對象,它可以遍歷並選擇序列中的對象,而開發人員不需要了解該序列的底層結構。迭代器通常被稱為“輕量級”對象,因為創建它的代價小。
Java中的Iterator功能比較簡單,並且只能單向移動:
(1) 使用方法iterator()要求容器返回一個Iterator。第一次調用Iterator的next()方法時,它返回序列的第一個元素。注意:iterator()方法是java.lang.Iterable接口,被Collection繼承。
(2) 使用next()獲得序列中的下一個元素。
(3) 使用hasNext()檢查序列中是否還有元素。
(4) 使用remove()將迭代器新返回的元素刪除。
eg:set
public class Test1 { public static void main(String[] args){ Set set = new HashSet(); set.add(5); set.add(4); set.add(7); set.add(2); set.add(2); Iterator it = set.iterator(); while (it.hasNext()){ System.out.println(it.next()); } } }
結果:
eg:list
public class Test1 { public static void main(String[] args){ List<Integer> list = new ArrayList<>(); list.add(2); list.add(2); list.add(9); list.add(5); list.add(6); Iterator it = list.iterator(); while (it.hasNext()){ System.out.println(it.next()); } } }
結果: