zoukankan      html  css  js  c++  java
  • Android(java)学习笔记41:Map集合功能概述

    1. 下面通过代码引入Map集合:

    如下

     1 package cn.itcast_01;
     2 
     3 import java.util.HashMap;
     4 import java.util.Map;
     5 
     6 /*
     7  * 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取学生姓名,请问怎么做呢?
     8  * 如果采用前面讲解过的集合,我们只能把学号和学生姓名作为一个对象的成员,然后存储整个对象,将来遍历的时候,判断,获取对应的名称。
     9  * 但是呢,如果我都能把学生姓名拿出来了,我还需要根据编号去找吗?
    10  * 针对我们目前的这种需求:仅仅知道学号,就想知道学生姓名的情况,Java就提供了一种新的集合 Map。
    11  * 通过查看API,我们知道Map集合的一个最大的特点,就是它可以存储键值对的元素。这个时候存储我们上面的需求,就可以这样做
    12  *         学号1        姓名1
    13  *         学号2     姓名2
    14  *         学号3        姓名3
    15  *         学号2(不行)姓名4
    16  *         学号4               姓名4
    17  * Map集合的特点:
    18  *         将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 
    19  * 
    20  * Map集合和Collection集合的区别?
    21  *         Map集合存储元素是成对出现的,Map集合的键是唯一的,值是可重复的。可以把这个理解为:夫妻对
    22  *         Collection集合存储元素是单独出现的,Collection的儿子Set是唯一的List是可重复的。可以把这个理解为:光棍(11.11)
    23  * 
    24  * 注意:
    25  *         Map集合的数据结构值针对键有效,跟值无关    
    26  *             HashMap,TreeMap等会讲。
    27  *         Collection集合的数据结构是针对元素有效
    28  * 
    29  * Map集合的功能概述:
    30  * 1:添加功能
    31  *         V put(K key,V value):添加元素。这个其实还有另一个功能?先不告诉你,等会讲
    32  *             如果键是第一次存储,就直接存储元素,返回null
    33  *             如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值
    34  * 2:删除功能
    35  *         void clear():移除所有的键值对元素
    36  *         V remove(Object key):根据键删除键值对元素,并把值返回
    37  * 3:判断功能
    38  *         boolean containsKey(Object key):判断集合是否包含指定的键
    39  *         boolean containsValue(Object value):判断集合是否包含指定的值
    40  *         boolean isEmpty():判断集合是否为空,V表示是泛型
    41  * 4:获取功能
    42  *         Set<Map.Entry<K,V>> entrySet():???
    43  *         V get(Object key):根据键获取值
    44  *         Set<K> keySet():获取集合中所有键的集合
    45  *         Collection<V> values():获取集合中所有值的集合
    46  * 5:长度功能
    47  *         int size():返回集合中的键值对的对数
    48  */
    49 public class MapDemo {
    50     public static void main(String[] args) {
    51         // 创建集合对象
    52         Map<String, String> map = new HashMap<String, String>();
    53 
    54         // 添加元素
    55         // V put(K key,V value):添加元素。这个其实还有另一个功能?先不告诉你,等会讲
    56         // System.out.println("put:" + map.put("文章", "马伊俐"));
    57         // System.out.println("put:" + map.put("文章", "姚笛"));
    58 
    59         map.put("邓超", "孙俪");
    60         map.put("黄晓明", "杨颖");
    61         map.put("周杰伦", "蔡依林");
    62         map.put("刘恺威", "杨幂");
    63 
    64         // void clear():移除所有的键值对元素
    65         // map.clear();
    66 
    67         // V remove(Object key):根据键删除键值对元素,并把值返回
    68         // System.out.println("remove:" + map.remove("黄晓明"));
    69         // System.out.println("remove:" + map.remove("黄晓波"));
    70 
    71         // boolean containsKey(Object key):判断集合是否包含指定的键
    72         // System.out.println("containsKey:" + map.containsKey("黄晓明"));
    73         // System.out.println("containsKey:" + map.containsKey("黄晓波"));
    74 
    75         // boolean isEmpty():判断集合是否为空
    76         // System.out.println("isEmpty:"+map.isEmpty());
    77         
    78         //int size():返回集合中的键值对的对数
    79         System.out.println("size:"+map.size());
    80 
    81         // 输出集合名称
    82         System.out.println("map:" + map);
    83     }
    84 }

     

  • 相关阅读:
    c# Java 静态方法 并发问题
    最效率分页查询
    Hibernate中对象的三种状态
    Spring框架概述
    扫盲Cookies简单理解——关于IE浏览器隐私设置
    实例分析Struts的由来和概述
    操作系统——存储
    Hibernate概述
    操作系统——进程部分
    操作系统——进程死锁
  • 原文地址:https://www.cnblogs.com/hebao0514/p/4553762.html
Copyright © 2011-2022 走看看