【Java】遍历List/Set/Map集合的一些常用方法

/*
* 遍历List/Set/Map集合的一些常用方法
*/
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class TestMapListSet {
  public static void main(String[] args) {
  

  // 遍历List集合 :
    

    // 生成一个简单地List集合[aa,bb,cc,dd]
    List<String> list = new ArrayList<>();
    list.add("aa");
    list.add("bb");
    list.add("cc");
    list.add("dd");
   

    // 方法一:普通的for循环
    for (int i = 0; i < list.size(); i++) {
      System.out.println(list.get(i));
    }

 

    // 方法二:增强for循环,foreach循环
    for (String s : list) {
      System.out.println(s);
    }
    

    // 方法三:使用迭代器(1)for循环

    for (Iterator<String> iter = list.iterator(); iter.hasNext();) {
      String temp = (String) iter.next();
      System.out.println(temp);
    }

 

    // 方法四:使用迭代器(2)while循环
    Iterator<String> it = list.iterator();
    while (it.hasNext()) {
    String temp = (String) it.next();
    if (false) {
      it.remove(); // 如果在遍历的过程中需要删除部分元素的话,推荐使用此方法
    }
    System.out.println(temp);
    }

 

  // 遍历Set集合:
    

    // 生成一个简单的Set集合[aa,bb,cc,dd]
    Set<String> set = new HashSet<>();
    set.add("aa");
    set.add("bb");
    set.add("cc");
    set.add("dd");
    

    // 方法一:增强for循环:foreach循环
    for (String s : set) {
      System.out.println(s);
    }

 

    // 方法二:使用迭代器
    for (Iterator<String> iter = set.iterator(); iter.hasNext();) {
      String temp = (String) iter.next();
    System.out.println(temp);
    }
    

  // 遍历Map集合:
  

    // 生成一个简单地Map集合[512--aa,513--bb,514--cc,515--dd]
    Map<Integer, String> map = new HashMap<>();
    map.put(512, "aa");
    map.put(513, "bb");
    map.put(514, "cc");
    map.put(515, "dd");

 

    // 方法一:根据Key获取Value,foreach循环
    Set<Integer> keySet = map.keySet();
    for (Integer i : keySet) {
      System.out.println(i + "--" + map.get(i));
    }
    

    // 方法二:使用迭代器,使用entrySet
  
  Set<Map.Entry<Integer, String>> set1 = map.entrySet();

    for (Iterator<Map.Entry<Integer, String>> iter = set1.iterator(); iter.hasNext();) {
      Map.Entry<Integer, String> temp = iter.next();
      System.out.println(temp.getKey() + "--" + temp.getValue());
    }
  }
}

posted @ 2019-10-31 20:06  帅B旗  阅读(214)  评论(1编辑  收藏  举报