List、Set集合Map集合的遍历

来源:互联网 发布:excel表格怎么填充数据 编辑:程序博客网 时间:2024/05/22 00:30
    1. /**  
    2.  *遍历集合List  
    3.  * @author 够潮  
    4.  *  
    5.  */  
    6. public class Demo35 {   
    7.   
    8.     /**  
    9.      * @param args  
    10.      */  
    11.     public static void main(String[] args) {   
    12.        
    13.         List list = new ArrayList();   
    14.         list.add("gouchao");   
    15.         list.add("gouli");   
    16.         //下标   
    17.         for(int i = 0 ; i< list.size();i++){   
    18.                
    19.             System.out.println(list.get(i));   
    20.         }   
    21.         //for- each   
    22.         for(Object o:list){   
    23.             System.out.println(o);   
    24.         }   
    25.         //迭代器   
    26.         Iterator it = list.iterator();   
    27.         while(it.hasNext()){   
    28.             System.out.println(it.next());   
    29.         }   
    30.         //Object数组    
    31.         Object o[];   
    32.         o = list.toArray();   
    33.         for(int i =  0 ; i <o.length;i++){   
    34.             System.out.println(o[i]);   
    35.         }   
    36.         //toString   
    37.         System.out.println(list.toString());   
    38.   
    39.     }   
    40.   
    41. }  
    分类: 【4】【Java】



  1. 对 set 的遍历  
  2.   
  3. 1.迭代遍历:  
  4. Set<String> set = new HashSet<String>();  
  5. Iterator<String> it = set.iterator();  
  6. while (it.hasNext()) {  
  7.   String str = it.next();  
  8.   System.out.println(str);  
  9. }  
  10.   
  11. 2.for循环遍历:  
  12. for (String str : set) {  
  13.       System.out.println(str);  
  14. }  
  15.   
  16.   
  17. 优点还体现在泛型 假如 set中存放的是Object  
  18.   
  19. Set<Object> set = new HashSet<Object>();  
  20. for循环遍历:  
  21. for (Object obj: set) {  
  22.       if(obj instanceof Integer){  
  23.                 int aa= (Integer)obj;  
  24.              }else if(obj instanceof String){  
  25.                String aa = (String)obj  
  26.              }  
  27.               ........  
  28. }   




Map集合的四种遍历方式


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


public class TestMap {
    public static void main(String[] args) {
        Map<Integer, String> map = new HashMap<Integer, String>();
        map.put(1, "a");
        map.put(2, "b");
        map.put(3, "ab");
        map.put(4, "ab");
        map.put(4, "ab");// 和上面相同 , 会自己筛选
        System.out.println(map.size());
        // 第一种:
        /*
         * Set<Integer> set = map.keySet(); //得到所有key的集合
         * 
         * for (Integer in : set) { String str = map.get(in);
         * System.out.println(in + "     " + str); }
         */
        System.out.println("第一种:通过Map.keySet遍历key和value:");
        for (Integer in : map.keySet()) {
            //map.keySet()返回的是所有key的值
            String str = map.get(in);//得到每个key多对用value的值
            System.out.println(in + "     " + str);
        }
        // 第二种:
        System.out.println("第二种:通过Map.entrySet使用iterator遍历key和value:");
        Iterator<Map.Entry<Integer, String>> it = map.entrySet().iterator();
        while (it.hasNext()) {
             Map.Entry<Integer, String> entry = it.next();
               System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
        }
        // 第三种:推荐,尤其是容量大时
        System.out.println("第三种:通过Map.entrySet遍历key和value");
        for (Map.Entry<Integer, String> entry : map.entrySet()) {
            //Map.entry<Integer,String> 映射项(键-值对)  有几个方法:用上面的名字entry
            //entry.getKey() ;entry.getValue(); entry.setValue();
            //map.entrySet()  返回此映射中包含的映射关系的 Set视图。
            System.out.println("key= " + entry.getKey() + " and value= "
                    + entry.getValue());
        }
        // 第四种:
        System.out.println("第四种:通过Map.values()遍历所有的value,但不能遍历key");
        for (String v : map.values()) {
            System.out.println("value= " + v);
        }
    }
}



0 0
原创粉丝点击