遍历集合
遍历集合时我们可以使用遍历器。
1 package com.hw.ArrayListDemo0131;
2 import java.util.ArrayList;
3 import java.util.Iterator;
4 public class ArrayListDemo {
5 public static void main(String[] args) {
6 ArrayList al = new ArrayList(); //注意,当我们以这种方式创建集合的时候,可以添加任意类型的数据
7 al.add(12); //里面的每一个数据都是object类型的
8 al.add(23);
9 al.add(4);
10 al.add(75);
11 al.add(625);
12 int result = 0;
13 for(int i = 0;i < al.size();i++)
14 {
15 result += (int)al.get(i);//注意,正是因为集合里面的数据都是object类型的,属于引用类型
16 } //所以如果要用作整型使用的话,必须进行强制类型转换
17 System.out.println(result); //前面的名字输出没有问题是因为直接当做字符串输出了
18
19 Iterator it = al.iterator(); //这是一个遍历器
20 while(it.hasNext()) //顾名思义,每次调用都输出下一个数据,我们这个集合只有五个数据
21 {
22 System.out.println(it.next());
23 }
24 } //所以只能调用5次,否则会报错。
25 } //这里我们通过while循环来输出,更安全

但是iterator有一个缺点,就是它是一次性的,若还想遍历,只能再弄一个新的。
所以我们可以使用增强版for循环来遍历,具体内容详见代码:
1 package com.hw.ArrayListDemo0131;
2 import java.util.ArrayList;
3 import java.util.Iterator;
4 public class ArrayListDemo {
5 public static void main(String[] args) {
6 ArrayList al = new ArrayList(); //注意,当我们以这种方式创建集合的时候,可以添加任意类型的数据
7 al.add(12); //里面的每一个数据都是object类型的
8 al.add(23);
9 al.add(4);
10 al.add(75);
11 al.add(625);
12 for(Object o : al) //增强版for循环,首先指定数据类型,o是一个临时变量,然后是要遍历的集合
13 {
14 System.out.print(o+" ");
15 }
16 System.out.println();
17 int arr[] = new int[]{1,27,35,96,54,3};
18 int result=0;
19 for(int temp : arr) //这种for循环同样可给数组使用
20 {
21 System.out.print(temp+" ");
22 }
23 System.out.println();
24 for(int i : arr) //用于求和
25 {
26 result += i;
27 }
28 System.out.println(result);
29 }
30 }

还有一种LinkedList集合类型,跟ArrayList差不多,来看看代码:
1 package com.hw.ArrayListDemo0131;
2 import java.util.LinkedList;
3 public class LinkedListDemo {
4 public static void main(String[] args) {
5 LinkedList li = new LinkedList();
6 li.add(12);
7 li.add(23);
8 li.add(76);
9 for(Object o : li)
10 {
11 System.out.print(o+" ");
12 }
13 System.out.println();
14 li.addFirst(100); //可添加在最前面
15 for(Object o : li)
16 {
17 System.out.print(o+" ");
18 }
19 //ArrayList以数组形式保存数据;LinkedList以引用形式来保存。后者可很方便地插入和删除数据。
20 }
21 }

一般来说,如果集合经常需要插入和删除某些数据,使用LinkedList会更加方便。
关于集合的几点说明:首先,它是有序的,即它是按照添加元素的先后顺序进行排列;其次,集合里的数据可以重复。

浙公网安备 33010602011771号