Java Map 接口

Posted ShuiChe’s Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java Map 接口相关的知识,希望对你有一定的参考价值。

 

Map接口中键和值一一映射. 可以通过键来获取值。

  • 给定一个键和一个值,你可以将该值存储在一个Map对象. 之后,你可以通过键来访问对应的值。
  • 当访问的值不存在的时候,方法就会抛出一个NoSuchElementException异常.
  • 当对象的类型和Map里元素类型不兼容的时候,就会抛出一个 ClassCastException异常。
  • 当在不允许使用Null对象的Map中使用Null对象,会抛出一个NullPointerException 异常。
  • 当尝试修改一个只读的Map时,会抛出一个UnsupportedOperationException异常。

序号

方法描述

1

void clear( )
 从此映射中移除所有映射关系(可选操作)。

2

boolean containsKey(Object k)
如果此映射包含指定键的映射关系,则返回 true。

3

boolean containsValue(Object v)
如果此映射将一个或多个键映射到指定值,则返回 true。

4

Set entrySet( )
返回此映射中包含的映射关系的 Set 视图。

5

boolean equals(Object obj)
比较指定的对象与此映射是否相等。

6

Object get(Object k)
返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。

7

int hashCode( )
返回此映射的哈希码值。

8

boolean isEmpty( )
如果此映射未包含键-值映射关系,则返回 true。

9

Set keySet( )
返回此映射中包含的键的 Set 视图。

10

Object put(Object k, Object v)
将指定的值与此映射中的指定键关联(可选操作)。

11

void putAll(Map m)
从指定映射中将所有映射关系复制到此映射中(可选操作)。

12

Object remove(Object k)
如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。

13

int size( )
返回此映射中的键-值映射关系数。

14

Collection values( )
返回此映射中包含的值的 Collection 视图。

 

 

     Map<String, Object> m1 = new HashMap<String, Object>();
        Map<String, Object> m2 = new HashMap<String, Object>();
        
        m1.put("aaa", "bb");
        m1.put("ab", "cccc");
        m1.put("ddd", "ddd");
        System.out.println(m1);
        System.out.println("------------1---------------");
        System.out.println(m1.containsKey("aaa"));
        System.out.println(m1.entrySet());
        System.out.println("aaa".equals(m1.containsKey("aaa")));
        System.out.println("bb".equals(m1.get("aaa")));
        System.out.println(m1.get("aaa").hashCode());
        System.out.println(m1.isEmpty());
        System.out.println(m1.keySet());
        m2.putAll(m1);
        m2.put("222", "222");
        System.out.println(m2);
        m2.remove("222");
        m2.remove("333");
        System.out.println(m2);
        System.out.println(m2.size());
        System.out.println(m2.values());

执行结果:

{aaa=bb, ddd=ddd, ab=cccc}
------------1---------------
true
[aaa=bb, ddd=ddd, ab=cccc]
false
true
3136
false
[aaa, ddd, ab]
{222=222, aaa=bb, ddd=ddd, ab=cccc}
{aaa=bb, ddd=ddd, ab=cccc}
3
[bb, ddd, cccc]

 

以上是关于Java Map 接口的主要内容,如果未能解决你的问题,请参考以下文章

elasticsearch代码片段,及工具类SearchEsUtil.java

java之Map源代码浅析

java打开获取数据的接口,保存到静态map里面,定时取出map的值进行保存

java代码之美---Java8 Map中的computeIfAbsent方法

大数据必学Java基础(五十九):Map接口源码部分

CSP核心代码片段记录