原文:Java HashMap和 ConcurrentHashMap 热门面试题

目录 在日常开发中使用过的java集合类有哪些 谈一下HashMap的特性 HashMap 的数据结构是什么 单链表和红黑树相互转换的条件是什么 链表和红黑树相互转换的阈值为什么是 和 为什么要在数组长度不小于 之后,链表才会进化为红黑树 HashMap 的容量如何确定 loadFactor 是什么 HashMap使用了哪些方法来有效解决哈希冲突 为什么数组长度要保证为 的幂次方 为什么是两次扰 ...

2022-04-16 19:56 0 652 推荐指数:

查看详情

面试题:HashMapConcurrentHashMap的区别,HashMap的底层源码。

Hashmap本质是数组加链表。根据key取得hash值,然后计算出数组下标,如果多个key对应到同一个下标,就用链表串起来,新插入的在前面。   ConcurrentHashMap:在hashMap的基础上,ConcurrentHashMap将数据分为多个segment(段),默认16 ...

Mon May 07 04:17:00 CST 2018 0 7780
concurrentHashMap面试题

面试题ConcurrentHashMap有哪些构造函数? ConcurrentHashMap使用什么技术来保证线程安全? ConcurrentHashMap的get方法是否要加锁,为什么? ConcurrentHashMap迭代器是强一致性还是弱一致性?HashMap ...

Tue Nov 13 08:50:00 CST 2018 2 4101
ConcurrentHashMap面试题

1.JDK1.7版本的CurrentHashMap的实现原理 在JDK1.7中ConcurrentHashMap采用了数组+Segment+分段锁的方式实现。 1.Segment(分段锁) ConcurrentHashMap中的分段锁称为Segment,它即类似于HashMap的结构 ...

Sun Jul 07 01:48:00 CST 2019 0 3175
Java面试题HashMap和HashTable的区别

HashMap和HashTable的区别是面试面试官经常问的问题,在回答的时候可以选择重点做回答,区别主要有下面几点:key和value的取值范围不同HashMap和HashTable都是基于哈希表来实现键值映射的工具类,底层都是哈希表结构。 HashMap允许键为null,值为null ...

Wed Aug 14 01:30:00 CST 2019 0 1801
java面试题——HashMap和Hashtable 的区别

一.HashMap 和Hashtable 的区别   我们先看2个类的定义   可见Hashtable 继承自 Dictiionary 而 HashMap继承自AbstractMap   Hashtable的put方法如下 注意1 方法是同步的注意 ...

Thu Nov 24 06:58:00 CST 2016 0 11623
HashMap面试题

HashMap原理: “HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到bucket位置来储存值对象。当获取对象时,通过键对象的equals ...

Sun Jul 07 00:59:00 CST 2019 0 804
HashMap面试题讲解

本文会以问题得形式阐述,并且简单讲解。 1.你了解HashMap么,可以说说么?   首先,HashMap是一种数据结构,可以快速的帮我们存取数据。它的底层数据结构在1.7和1.8有了一些变化,1.7版本及以前他是数组+链表的形式,1.8及以后数组+链表+红黑树,如果链表长度大于等于8就会转化 ...

Sun Jun 07 00:34:00 CST 2020 0 7127
一些ConcurrentHashMap面试题

下面是我收集的一些面试题: JDK1.8中的ConcurrentHashMap是如何保证线程安全的? 模板2: 储存Map数据的数组时被volatile关键字修饰,一旦被修改,其他线程就可见修改。因为是数组存储,所以只有改变数组内存值是才会触发volatile的可见性 如果put ...

Sun Feb 13 03:13:00 CST 2022 0 675
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM