千家信息网

java中Hashmap的get方法怎么用

发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,这篇文章主要介绍java中Hashmap的get方法怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!java中Hashmap的get方法map中存储的是键值对,也就是说通过
千家信息网最后更新 2025年11月06日java中Hashmap的get方法怎么用

这篇文章主要介绍java中Hashmap的get方法怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

java中Hashmap的get方法

map中存储的是键值对,也就是说通过set方法进行参数和值的存储,之后通过get"键"的形式进行值的读取。

举例

Map map = new Hashmap();//创建一个mapmap.put("key","value");//给map赋值String vlaues = map.get("key");//获取map中键值为"key"的值system.out.println(vlaues );//输出结果

以上代码的运行结果:

value;

HashMap中get方法的原理

1、首先向get()方法中传递一个key

2、在get()方法中调用hash(key)

如果key!=null,返回该key的哈希值hash = key.hashCode()^ (h >>> 16),否则返回hash=0

3、在get()方法中调用getNode(hash,key)方法

获取该key的节点,并返回value

4、getNode()方法中

首先要判断Hashtable是否为空且table长度大于0且该hash值对应的table元素不为空,条件成立则判断该节点的哈希值是否等于hash,依次遍历该链表或红黑树,查找key==node.key?返回查找到的节点的value

// JDK源码 public V get(Object key) {        Node e;        return (e = getNode(hash(key), key)) == null ? null : e.value;} final Node getNode(int hash, Object key) {        Node[] tab; Node first, e; int n; K k;                //判断hashtable是否为空,key对应的tab[ ]是否为空        if ((tab = table) != null && (n = tab.length) > 0 &&            (first = tab[(n - 1) & hash]) != null) {                        //判断第一个节点的hash,key是否相等            if (first.hash == hash && // always check first node                ((k = first.key) == key || (key != null && key.equals(k))))                return first;                        //判断下一个节点是否为空            if ((e = first.next) != null) {                                //判断是否是红黑树的节点,并遍历查找元素                if (first instanceof TreeNode)                    return ((TreeNode)first).getTreeNode(hash, key);                do {                    if (e.hash == hash &&                        ((k = e.key) == key || (key != null && key.equals(k))))                        return e;                } while ((e = e.next) != null);            }        }        return null;    }

以上是"java中Hashmap的get方法怎么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

方法 节点 元素 内容 篇文章 结果 哈希 存储 也就是 也就是说 代码 价值 兴趣 原理 参数 小伙 小伙伴 形式 更多 条件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全教育主题班会ppt小学 知网怎么登学校数据库 gis常见空间数据库技术 删除数据库及其包含的表的命令是 空间数据库基本原理 虚拟局域网网络安全 电脑网络技术培训学什么 昶弘网络技术有限公司 网络安全相关技术网站有哪些 网络安全设备软件核心技术 软件网络安全大数据专业 特别重大网络安全事件规定 天坛医院脑卒中数据库 无状态数据库设计 求生之路2多人用什么服务器 英特尔服务器电源改12V 安卓平板上能做软件开发么 关于网络安全的意识 五g网络技术哪个国家最早 数据库贴吧 黄浦区市场软件开发信息中心 搜狐汽车销量数据库 网络安全科技馆郑州归谁管 对软件开发流程的理解 1.8纯生存服务器 未转变者服务器突然黑屏怎么回事 阿里学生服务器考试答案 数据库备份还原工具有啥用 2000数据库怎么设置远程访问 调取数据库服务分几种
0