zoukankan      html  css  js  c++  java
  • Map集合

    Map是双列集合的根接口,用于存储具有映射关系的数据。

    根据key来区分每一项、获取对应的value,所以key不能重复。

    key、value都可以是任意类型的数据。

    Map提供了一个内部类Entry用来封装键值对,一个键值对就是一个Entry实例。

    Map的常用方法(所有子类都可以直接使用):

    void put(Object key,Object value)    添加一个键值对,如果已有相同的key,会覆盖原有的键值对

    void putAll(Map map)

    Object  get(Object key)   获取对应的value

    Object remove(Object key)  删除指定的键值对,返回value值。如果key不存在,返回null

    boolean  remove(Object key,Object value)   删除指定的键值对,这是java8新增的方法

    int  size()    键值对的数量

    boolean  isEmpty()   是否是空Map

    void clear()    清空Map

    boolean  containsKey(Object key)  是否包含指定的key

    boolean containsValue(Object value)   是否包含指定的值(一个或多个)

    Set  keySet()   获取所有key组成的Set

    Collection  values()    返回所有value组成的Collection

    Set  entrySet()   获取所有的键值对(Entry实例),组成一个Set集合

    Java8新增的方法:

    Object  getOrDefault(Object key, Object defaultValue)   获取指定key的value,如果key不存在,返回设置的默认value(第二个参数) 

    Object  replace(Object key,Object value)  替换原来的键值对,如果key不存在,返回null。put(Object key,Object value)是key存才就替换,key不存在会添加该键值对。

    Object replace(Object key,Object oldVlue,Object newValue)   替换指定的键值对,key、value要一致才替换

    Map的内部类Entry可用的方法:

    Object  getKey()   获取key

    Object  getValue()    获取value

    void   setValue(Object value)   设置新的value值

    Map集合的实现类都重写了toString(),会以  {key1=value1,key2-value2,key3=value3,.....} 字符串的形式返回。

    1  Map map=new HashMap();
    2        map.put("name","age");
    3        map.put("age",18);
    4        //自动调用.toString()
    5        System.out.println(map);   //{name=age, age=18}
  • 相关阅读:
    android闹钟
    Android API : SMS短信服务处理
    Windows Mobile Web方式下载文件
    摘录的一点东西,很有感触
    Net Compact Framework 基础篇(6) Socket通信 【转】
    实例讲解.NET中资源文件的创建与使用
    如何安装Apk文件到Android模拟器
    __forceinline 关键字
    Allocate aligned memory
    linux svn安装和配置,不结合apache
  • 原文地址:https://www.cnblogs.com/chy18883701161/p/10891674.html
Copyright © 2011-2022 走看看