高级for循环

格式:

for(数据类型 变量名:被遍历的集合(Collection)或者数组)
{
}

对集合进行遍历。

只能获取元素,但是不能对集合进行操作。

注意:

迭代器除了遍历,还可以进行remove集合中元素的动作。

如果使用Listlerator,还可以在遍历的过程中对集合进行增删改查的动作。

区别:

传统for循环和高级for循环的区别

高级for有一个局限性。必须有被遍历的目标。

建议:在遍历数组的时候,还是希望使用传统for,因为传统for可以定义脚标。

实例

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class ForEachDemo {

    public static void main(String[] args) {
        ArrayList<String> al = new ArrayList<String>();

        al.add("add1");
        al.add("add2");
        al.add("add3");

        for (String s : al) {
            System.out.println(s);
        }
        System.out.println(al);

        HashMap<Integer, String> hm = new HashMap<Integer, String>();
        hm.put(1, "hello1");
        hm.put(3, "hello3");
        hm.put(2, "hello2");
        hm.put(4, "hello4");

        Set<Integer> set = hm.keySet();
        for (Integer i : set) {
            sop(i + ".." + hm.get(i));
        }

        Set<Map.Entry<Integer, String>> set1 = hm.entrySet();
        for (Map.Entry<Integer, String> me : set1) {
            Integer key = me.getKey();
            String value = me.getValue();
            sop(key + ": " + value);
        }
    }

    private static void sop(Object s) {
        System.out.println(s);
    }
}

ほんとうにまじめに努力(どりょく)することは