zoukankan      html  css  js  c++  java
  • 【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());
        }
      }
    }

  • 相关阅读:
    WEB前端工程师 – 职业生涯规划
    求Sn=a+aa+aaa+…+aaa…a的值
    输入一行字符,分别统计出其中英文字母 空格 数字和其他字符的个数
    getchar()的用法!
    求1+2+…+n的和不大于1000的最大自然数n
    编程打印输出*金字塔
    从键盘输入一个整数,判断该数是否回文数.
    编程求"水仙花数"
    编程求出1000以内的完全数
    输入两个正整数,求它们的最大公约数和最小公倍数.
  • 原文地址:https://www.cnblogs.com/shuaiBqi/p/11773407.html
Copyright © 2011-2022 走看看