zoukankan      html  css  js  c++  java
  • Java

    此篇文章主要记录各种不同类型数据的遍历

    一、遍历List

    1. 使用迭代器Iterator进行遍历
    2. for循环遍历
    3. foreach循环遍历
          @Test
          void contextLoads() {
      
              List<Object> list=new ArrayList<>();
              list.add("Hi");
              list.add("I");
              list.add("am");
              list.add("Lucy");
      
              // Iterator迭代器遍历
              System.out.println("Iterator迭代器遍历结果:");
              Iterator<Object> itlist=list.iterator();
              while (itlist.hasNext()){
                  System.out.print(itlist.next());
                  System.out.print(" ");
              }
      
              // for循环遍历
              System.out.println();
              System.out.println("for循环遍历结果:");
              for (int i=0;i<list.size();i++){
                  System.out.print(list.get(i));
                  System.out.print(" ");
              }
      
              // foreach循环遍历
              System.out.println();
              System.out.println("foreach循环遍历结果:");
              for (Object element:list) {
                  System.out.print(element);
                  System.out.print(" ");
              }
          }

      输出结果:

    二、遍历Set

    1. 使用迭代器Iterator进行遍历
    2. foreach循环遍历
    3. !!!不能直接使用for循环遍历,因为Set类接口没有获取元素的方法(好像可以转化成List再使用for循环遍历,不是很确定)
          @Test
          void contextLoads() {
      
              Set<Object> set=new HashSet<>();
              set.add("Hi");
              set.add("I");
              set.add("am");
              set.add("Lucy");
              
              // Iterator迭代器遍历
              System.out.println("Iterator迭代器遍历结果:");
              Iterator<Object> itset=set.iterator();
              while (itset.hasNext()){
                  System.out.print(itset.next());
                  System.out.print(" ");
              }
      
              // foreach循环遍历
              System.out.println();
              System.out.println("foreach循环遍历结果:");
              for (Object element:set) {
                  System.out.print(element);
                  System.out.print(" ");
              }
              System.out.println();
          }

    三、遍历Map

    # map声明
            Map<Object,Object> map=new HashMap<>();
            map.put("id","001");
            map.put("name","张三");
            map.put("age",18);
    1. 通过Map.keySet获取key,然后用map.get(Key)来获取对应的值
      // 通过Map.keySet取值遍历
              for (Object key:map.keySet()) {
                  System.out.println(key + " : " + map.get(key));
              }
    2. 通过Map.enteySet和iterator迭代器相结合,然后使用getKey和getValue获取key和value
          @Test
          void contextLoads() {
      
              Map<String, String> map = new HashMap<>();
              map.put("id", "001");
              map.put("name", "张三");
              map.put("age", "18");
      
              Set<Map.Entry<String,String>> entrySet=map.entrySet();
              Iterator<Map.Entry<String,String>> iterator=entrySet.iterator();
      
              while (iterator.hasNext()) {
                  Map.Entry<String,String> entry1 = iterator.next();
                  System.out.println(entry1.getKey() + " : " + entry1.getValue());
              }
          }
    3. 通过Map.enteySet遍历key和value
      //  推荐,尤其容量大时,通过通过entrySet遍历,但是不使用Iterator遍历
              for (Map.Entry<Object,Object> entry2 : map.entrySet()) {
                  System.out.println(entry2.getKey() + " : " + entry2.getValue());
              }
    4. 通过Map.values()遍历所有的values,但是不能遍历key
      //   通过Map.values()遍历值,但是不能遍历key
              for (Object value : map.values()) {
                  System.out.println(value);
              }

    四、遍历数组

    1. 使用for循环
    2. 使用foreach循环
    3. 如果是要输出数组的话,可以使用toString方法
          @Test
          void contextLoads() {
      
              String[] arr={"n","a","m","e"};
      
              // for循环
              for (int i=0;i< arr.length;i++){
                  System.out.print(arr[i] + " ");
              }
              System.out.println();
      
              // foreach循环
              for (String element:arr) {
                  System.out.print(element + " ");
              }
              System.out.println();
      
              // Arrays.toString()方法
              System.out.println(Arrays.toString(arr));
          }

  • 相关阅读:
    Linux添加系统环境变量
    keras 或 tensorflow 调用GPU报错:Blas GEMM launch failed
    python 安装虚拟环境
    Seq2Seq 到 Attention的演变
    聊天内容处理笔记
    LSTM 详解
    keras 打印模型图
    zip 的对象是不能用索引去取的
    c# 反射获取属性值 TypeUtils
    .iml文件恢复
  • 原文地址:https://www.cnblogs.com/mysummary/p/12464892.html
Copyright © 2011-2022 走看看