zoukankan      html  css  js  c++  java
  • java oop遍历List和Map的几种方法

    一、list的遍历

    import java.util.*;
    
    public class ListTest {
        public static void main(String[] args) {
            List<String> list = new ArrayList<String>();
            list.add("Hello");        //用add方法为list添加内容
            list.add("World");
            list.add("!");
            
            //第一种遍历list的方法
            for (String str : list) {
                System.out.println(str);
            }
            System.out.println();
            //第二种遍历list的方法,先将链表变为数组
            String[] strarr = new String[list.size()];
            list.toArray(strarr);
            for (int i = 0; i < strarr.length; i++) {
                System.out.println(strarr[i]);
            }
            
            //第三种遍历list的方法,使用迭代器进行遍历
            //该方法可以不用担心在遍历的过程中会超出集合的长度
            System.out.println();
            Iterator<String> ite = list.iterator();
            while (ite.hasNext()) {
                System.out.println(ite.next());
                
            }
        }
    }


    三、Map的遍历

    import java.util.*;
    /**
     *遍历Map 
     *任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换。
     */
    public class MapTest {
        public static void main(String[] args) {
            //实例化一个map对象
            Map<String,String> map = new HashMap<String, String>();
            map.put("1", "value1");        //使用对象名。put为map的key和value赋值
            map.put("2", "value2");
            map.put("3", "value3");
            
            //第一种遍历map的方式:普通遍历,二次取值
            System.out.println("通过Map.KeySet遍历Key和Value");
            for (String str : map.keySet()) {
                System.out.println("k="+str + ",v="+map.get(str));
            }
            
            System.out.println();
            //第二种:通过Map.entrySet使用iterator遍历key和value:
            System.out.println("通过Map.entrySet使用iterator遍历key和value:");
            Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
            while (it.hasNext()) {
                System.out.println(it.next());
                
            }
            
            //第三种:使用map.entrySet遍历map,尤其是在容量大时使用
            for (Map.Entry<String, String> str : map.entrySet()) {
                System.out.println(str.getKey() + "=" + str.getValue());
            }
            
            System.out.println();
            //第四种:通过map.values遍历map,但是只能显示value,不能显示key
            for (String v : map.values()) {
                System.out.println(v);
            }
        }
    }
  • 相关阅读:
    Linux下MySQL/MariaDB Galera集群搭建过程
    Linux下Nginx+Tomcat负载均衡和动静分离配置要点
    快速部署tomcat项目的Shell脚本
    利用缓存实现APP端与服务器接口交互的Session控制
    基于xml的Spring多数据源配置和使用
    基于注解的Spring多数据源配置和使用
    MySQL 开启事件 使用定时器调用存储过程
    MyBatis绑定错误--BindingException:Invalid bound statement (not found)
    micropython1.16官方文档转PDF
    dokuwiki使用随笔
  • 原文地址:https://www.cnblogs.com/zhangzimuzjq/p/11715513.html
Copyright © 2011-2022 走看看