Document

前言:关于共有3中遍历输出方式,很早之前我就想整理,无奈一直没有抽出时间,分别是传统的for循环遍历,迭代器Iterator,foreach,这次我通过测试代码,测试了一下。

先用一张草图,大概有个印象:,图虽然丑了点但是全部是干货。

这是我的测试代码,我用的是测试方法写:

 1 package com.mon11.day11;
 2 
 3 import static org.junit.Assert.*;
 4 
 5 import java.util.ArrayList;
 6 import java.util.Iterator;
 7 import java.util.List;
 8 
 9 import org.junit.Test;
10 
11 /**
12  * 类说明 :三种遍历输出的理解
13  * @author 作者 : chenyanlong
14  * @version 创建时间:2017年11月11日
15  */
16 public class Demo1 {
17 
18     // 1.传统的for循环遍历输出,
19     @Test
20     public void test1() {
21         System.out.println("1.传统的for循环遍历输出-----------------");
22         int[] arrays = { 12, 34, 56 };
23         for (int i = 0; i < arrays.length; i++) {
24             System.out.println(arrays[i]);
25         }
26     }
27 
28     // 2.迭代器遍历输出Iterator
29     @Test
30     public void test2() {
31 
32         List arrays = new ArrayList();
33         arrays.add("21");// 刚开始我用的是整数类型,一直都不正确,如果换成字符串类型的就正确了
34         arrays.add("43");
35         arrays.add("65");
36 
37         System.out.println("2.1迭代器用于for循环------------------");
38         System.out.println("2.1------//这种方式,我一直在思考,到现在还是没明白------------");
39         /*Iterator a =null;
40         for (a= arrays.iterator();a.hasNext() ;) {
41             String array1 = (String) a.next();
42             System.out.println(array1);
43         }*/
44         
45         /*for (Iterator a =arrays.iterator();a.hasNext() ;) {//考虑到for 的语法问题
46             String array1 = (String) a.next();
47             System.out.println(array1);
48         }*/
49         Iterator a =arrays.iterator();
50         for (;a.hasNext() ;) {
51             String array1 = (String) a.next();
52             System.out.println(array1);
53         }
54         System.out.println("------------------");
55 
56         System.out.println("2.2迭代器用于while循环------------------");
57         Iterator b = arrays.iterator();
58         while (b.hasNext()) {
59             String array2 = (String) b.next();
60             System.out.println(array2);
61         }
62     }
63 
64     // 3.foreach循环遍历输出,
65     @Test
66     public void test3() {
67         int[] arrays = { 12, 34, 56 };
68         System.out.println("3.foreach循环遍历输出-------------------");
69         for (int r:arrays) {
70             System.out.println(r);
71         }
72     }
73 }

运行的效果:

原文地址:https://www.cnblogs.com/chenyanlong/p/7818786.html