image.png
    hasNext():判断是否还有下一个元素
    while(iterator。hasNext()){
    //next():①指针下移 ②将下移后的集合位置上的元素返回
    sout(iterator.next());
    }

    集合元素的遍历操作,使用迭代器Iterator接口
    内部的方法:hasNext()和next();
    集合对象每次调用iterator()方法都得到一个全新的迭代器对象
    默认的游标都在集合的第一个元素之前
    hasNext()判断是否还有下一个元素

    1. while(iterator.hasNext){
    2. //next():①指针下移 ②将下移以后集合位置上的元素返回
    3. System.out.println(iterator.next());
    4. }

    image.png
    jdk 5.0 新增了foreach循环,用于遍历集合,数组

    1. public class ForTest {
    2. @Test
    3. public void test1(){
    4. Collection coll = new ArrayList();
    5. coll.add(123);
    6. coll.add(456);
    7. coll.add(new Person("jerry",20));
    8. coll.add(new String("Tom"));
    9. coll.add(false);
    10. //for (集合中元素的类型 局部变量 :集合对象)
    11. //内部仍然调用了迭代器
    12. for (Object obj : coll){
    13. System.out.println(obj);
    14. }
    15. }
    16. @Test
    17. public void test2(){
    18. int[] arr = new int[]{1,2,3,4,5,6};
    19. //for(数组元素的类型 局部变量 :数组对象)
    20. for(int i : arr){
    21. System.out.println(i);
    22. }
    23. }
    24. //练习题
    25. @Test
    26. public void test3(){
    27. String[] arr = new String[]{"MM","MM","MM"};
    28. //方式一:普通for赋值
    29. // for (int i = 0; i < arr.length; i++) {
    30. // arr[i] = "GG";
    31. // }
    32. //增强for循环
    33. for(String s : arr){
    34. s = "GG";
    35. }
    36. for (int i = 0; i < arr.length; i++) {
    37. System.out.println(arr[i]);
    38. }
    39. }
    40. }