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


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);
      }
     }
 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值