Map.Entry 内部接口|学习笔记

简介: 快速学习 Map.Entry 内部接口

开发者学堂课程【Java 高级编程Map.Entry 内部接口】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/419



Map.Entry 内部接口


Map.Entry接口

虽然已经清楚了整个的 Map 集合的基本操作形式,但是依然需要有一个核心的问题要解决,Map 集合里面是如何进行数据储的?对于 List 而言(LinkedList 子类)依靠的是链表的形式实现的数据存储,

那么在进行数据存储的时候一定要将数据保存在一个 Node 节点之中,虽然在 HashMap 里面也可以见到 Node 类型定义,通过源代码定义可以发现,HashMap  类中的 Node  内部类本身实现了 Map.Entry 接口。

static class Node<K, V> implements Map.Entry<K, V>{}

所以可以得出结论:所有的key和 value的数据都被封装在Map.Entry接口之中,而此接口定义如下:

public static interface Map.EntryK.V

并且在这个内部接口里面提供有两个重要的操作方法:

·获取 key: public K getKey();

·获取指定 value:

图片10.png

在 JDK 1.9 以前的开发版本之中,使用者基本上都不会去考虑创建 Map.Entry 的对象,实际上在正常的开发过程之中使用者也不需要关心 Map.Entry  对象创建,可是从 JDK1.9 之后,Map 接口里面追加有一个新的方法:

创建 Map.Entry 对象: public static K,V> Map.Entry K,V>entry(K k, V y);


范例:创建Map.Entry对象

package cn.mldn.demo;

import java.util.Map;

public class JavaAPIDemo {

public static void main(String[ ] args) throws Exception {

Map.Entry<String,Integer> entry = Map.entry( "one", 1) ;

System.out.print1n("获取Key: " + entry.getKey());

System.out.println("获取Value: " + entry.getValue());

System.out.println(entry.getClass( ).getName());//观察使用的子类

}

}

通过分析可以发现在整个的 Map 集合里面,Map.Entrv 的主要作用就是作为一个Key 和 Value 的包装类型使用,而大部分情况下在进行数据存储的时候都会将 key和 value 包装为一个 Map.Entry 对象进行使用。

 

相关文章
|
2月前
|
安全 Java
【Java集合类面试三】、Map接口有哪些实现类?
这篇文章介绍了Java中Map接口的几种常用实现类:HashMap、LinkedHashMap、TreeMap和ConcurrentHashMap,以及它们适用的不同场景和线程安全性。
|
4月前
|
存储 算法 Java
滚雪球学Java(65):深入理解Java中的Map接口:实现原理剖析
【6月更文挑战第19天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
35 3
滚雪球学Java(65):深入理解Java中的Map接口:实现原理剖析
|
3月前
|
Java
Java Map.Entry接口详解
Java Map.Entry接口详解
|
5月前
|
存储 Java
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法
|
4月前
|
安全 Java
|
5月前
|
Java
Map+函数式接口
Map+函数式接口
|
5月前
|
存储 安全 Java
Java的Map接口及其实现类的技术性文章
Java的Map接口及其实现类的技术性文章
29 0
|
5月前
|
存储 安全 Java
Java list set map等接口及其实现类
Java list set map等接口及其实现类
|
5月前
|
存储 安全 Java
[Java基础面试题] Map 接口相关
[Java基础面试题] Map 接口相关
|
5月前
|
存储 安全 Java
Java一分钟之-Map接口与HashMap详解
【5月更文挑战第10天】Java集合框架中的`Map`接口用于存储唯一键值对,而`HashMap`是其快速实现,基于哈希表支持高效查找、添加和删除。本文介绍了`Map`的核心方法,如`put`、`get`和`remove`,以及`HashMap`的特性:快速访问、无序和非线程安全。讨论了键的唯一性、`equals()`和`hashCode()`的正确实现以及线程安全问题。通过示例展示了基本操作和自定义键的使用,强调理解这些概念对编写健壮代码的重要性。
32 0
下一篇
无影云桌面