Java-高级for循环foreach

/*
 * 高级for循环
 *
 * 格式:
 * for(数据类型 变量名:被遍历的集合(Collection)或者数组){
 *
 * }
 *
 * 对集合进行遍历
 * 只能获取集合元素。但是不能对集合进行操作
 *
 * 迭代器除了遍历,还可以进行remove集合中元素的动作
 * 如果使用ListIterator,还可以在遍历过程中对集合进行增删改查的动作
 *
 * 传统for和高级for有什么区别呢?
 *
 * 高级for有一个局限性。必须有被遍历的目标
 *
 * 建议在遍历数组时,希望使用传统for.因为传统for可以定义脚标
 */

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

public class ForEachDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ArrayList<String> al = new ArrayList<String>();
        
        al.add("abc01");
        al.add("abc04");
        al.add("abc02");
        al.add("abc03");
        
        for(String s:al) {
            System.out.println(s);
        }
/*        
        Iterator<String> it = al.iterator();
        
        while(it.hasNext()) {
            System.out.println(it.next());
        }
*/
        int[] arr1 = {1,4,2,6,6,6};
        for(int x=0;x<arr1.length;x++) {
            System.out.println("arr["+x+"]:"+arr1[x]);
        }
        
        int[] arr = {1,4,2,6};
        for(int i:arr) {
            System.out.println("i:"+i);
        }
//--------------------------------------------------------------------        
        HashMap<Integer,String> hm = new HashMap<Integer,String>();
        
        hm.put(1, "a");
        hm.put(2, "b");
        hm.put(3, "c");
        hm.put(4, "d");
        
        Set<Integer> keySet = hm.keySet();
        for(Integer i:keySet) {
            System.out.println(i+"----"+hm.get(i));
        }
//    Set<Map.Entry<Integer, String>> entrySet = hm.entrySet();
//    for(Map.Entry<Integer,String> me : entrySet)
    
    for(Map.Entry<Integer,String> me:hm.entrySet()) {
        System.out.println(me.getKey()+"----"+me.getValue());
    }
    }
    

}

猜你喜欢

转载自blog.csdn.net/Lydia233/article/details/102655569