• 结合框架(二)


    一,Map 双列集合

      概述:现实生活中会看到一种集合,用户名--密码,这种关系一一对应,叫做映射。Java中提供

           了专门的集合类用来存放这种关系----Java.util.Map

      特点:

        1,双列,一个元素包含两个值 key value

        2key,value 数据类型可相同也可不同

        3key 唯一不重复,value可重复

        4key value 一一对应

        5,无序的

    二,HashMap

      Map的实现子类。底层也是通过哈希码表存储。方式是数组加链表形式。

      ★Map中没有获取迭代器的方法

        main方法中只能调用static 静态方法。

    三,常用方法

      put(keyvalue);         添加键值对

      remove(key);       根据key移除对应对

      get(key);         根据key获取对应value

      containsKey(key);     判断是否包含指定键

      keySet(Map);       获取Map集合中所有key

      entrySet();         获取Map集合中的 Map.Entry<keyvalue>映射关系的Entry对象

    四,遍历使用方法:

      1,通过k 获取 v

        1》使用Map集合中 keySet()方法;把Map-->key取出-->存储到一个Set集合中

        2》遍历Set集合-->获取Map集合中的键key

        3》通过Map集合-->getkey)方法获取相应值value

      2,用过Entry映射关系获取v

             1》使用Map集合中entrySet()方法;把Map-->Entry映射对象取出-->存到Set集合中

        2》遍历Set集合-->获取每一个Entry对象

        3》使用Entry对象中的方法-->getKey();  getValue();-->获取对应键值对

      如:

      package cn.kgc.demo01.map;

      import java.util.*;

      public class Demo02EntrySet {

            public static void main(String[] args) {

                getKV();

            }

            public static void getKV(){

                //1,创建集合

                HashMap<String, Integer> mm = new HashMap<>();

                mm.put("杨幂",28);

                mm.put("刘诗诗",26);

                mm.put("景甜",28);

                mm.put("林志玲",35);

                System.out.println(mm);

                // 2,使用 entrySey() 获取映射对象

                Set<Map.Entry<String, Integer>> set = mm.entrySet();

                // 3 ,遍历获取entry 对象

                Iterator<Map.Entry<String, Integer>> it = set.iterator();

                while (it.hasNext()){

                       Map.Entry<String, Integer> entry = it.next();

                    // 根据entry对象调用get方法获取key和value

                    String key = entry.getKey();

                     Integer value = entry.getValue();

                     System.out.println(key+"="+value);

                }

                // 4,增强for

                System.out.println("************************************");

                for (Map.Entry entry:set){

                      String key = (String) entry.getKey();

                      Integer value =(Integer) entry.getValue();

                      System.out.println(key+":"+value);

                }

                System.out.println("************************************");

                for (Map.Entry<String,Integer> entry:mm.entrySet()){

                      System.out.println(entry.getKey()+"="+entry.getValue());

                }

           }

      }

  • 相关阅读:
    启动容器失败:endpoint with name cop already exists in network host.
    docker定时任务执行脚本报错:the input device is not a TTY
    期末总结
    云图学习
    豆瓣top250
    爬取学习
    爬取图片
    爬取学习bs4
    爬取学习 屠戮盗版天堂
    爬取学习
  • 原文地址:https://www.cnblogs.com/kide1412/p/10889903.html
Copyright © 2020-2023  润新知