Java之List和Map的几种遍历方式

xiaoxiao2021-02-27  272

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 /**   * list和map遍历   */   import  java.util.ArrayList; import  java.util.HashMap; import  java.util.Iterator; import  java.util.List; import  java.util.Map;   public  class  list_map遍历{   public  static  void  main(String[] args) {       List<String> list= new  ArrayList<String>();       list.add( "Hello" );       list.add( "World" );       list.add( "HAHAHAHA" );              //第一种遍历方法使用foreach遍历List       for  (String str : list) {             //也可以改写for(int i=0;i<list.size();i++)这种形式          System.out.println(str);       }          //第二种遍历,把链表变为数组相关的内容进行遍历       String[] strArray= new  String[list.size()];       list.toArray(strArray);       for ( int  i= 0 ;i<strArray.length;i++)  //这里也可以改写为  foreach(String str:strArray)这种形式       {          System.out.println(strArray[i]);       }             //第三种遍历 使用迭代器进行相关遍历       Iterator<String> ite=list.iterator();       while (ite.hasNext()) //判断下一个元素之后有值       {           System.out.println(ite.next());       }                            Map<String, String> map =  new  HashMap<String, String>();       map.put( "1" ,  "value1" );       map.put( "2" ,  "value2" );       map.put( "3" ,  "value3" );              //第一种:普遍使用,二次取值       System.out.println( "通过Map.keySet遍历key和value:" );       for  (String key : map.keySet()) {        System.out.println( "key= " + key +  " and value= "  + map.get(key));       }              //第二种       System.out.println( "通过Map.entrySet使用iterator遍历key和value:" );       Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();       while  (it.hasNext()) {        Map.Entry<String, String> entry = it.next();        System.out.println( "key= "  + entry.getKey() +  " and value= "  + entry.getValue());       }              //第三种:推荐,尤其是容量大时       System.out.println( "通过Map.entrySet遍历key和value" );       for  (Map.Entry<String, String> entry : map.entrySet()) {        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);       }      }   }
转载请注明原文地址: https://www.6miu.com/read-10999.html

最新回复(0)