• 近期将进行后台系统升级,如有访问不畅,请稍后再试!
  • 极客文库-知识库上线!
  • 极客文库小编@勤劳的小蚂蚁,为您推荐每日资讯,欢迎关注!
  • 每日更新优质编程文章!
  • 更多功能模块开发中。。。

标签:集合

技术杂谈

java 常用集合list与Set、Map区别及适用场景总结

java 常用集合list与Set、Map区别及适用场景总结
list 与 Set、Map 区别及适用场景1、List,Set 都是继承自 Collection 接口,Map 则不是2、List 特点:元素有放入顺序,元素可重复 ,Set 特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(注意:元素虽然无放入顺序,但是元素在 set 中的位置是有该元素的 HashCode 决定的,其位置其实……继续阅读 »

勤劳的小蚂蚁 1天前 9浏览 0评论0个赞

技术杂谈

全网把 Map 中的 hash() 分析的最透彻的文章,别无二家

全网把 Map 中的 hash() 分析的最透彻的文章,别无二家
你知道 HashMap 中 hash 方法的具体实现吗?你知道 HashTable、ConcurrentHashMap 中 hash 方法的实现以及原因吗?你知道为什么要这么实现吗?你知道为什么 JDK 7 和 JDK 8 中 hash 方法实现的不同以及区别吗?如果你不能很好的回答这些问题,那么你需要好好看看这篇文章。……继续阅读 »

勤劳的小蚂蚁 3天前 12浏览 0评论0个赞

技术杂谈

面试必问-几种线程安全的Map解析

面试必问-几种线程安全的Map解析
HashMap 线程安全的吗?Java 中平时用的最多的 Map集合就是 HashMap 了,它是线程不安全的。看下面两个场景:1、当用在方法内的局部变量时,局部变量属于当前线程级别的变量,其他线程访问不了,所以这时也不存在线程安全不安全的问题了。2、当用在单例对象成员变量的时候呢?这时候多个线程过来访问的就是同一个 Hash……继续阅读 »

勤劳的小蚂蚁 4天前 13浏览 0评论0个赞

技术杂谈

Java 集合框架面试问题集锦

Java 集合框架面试问题集锦
Java集合框架(例如基本的数据结构)里包含了最常见的 Java 常见面试问题。很好地理解集合框架,可以帮助你理解和利用 Java 的一些高级特性。下面是面试 Java 核心技术的一些很实用的问题。Q:最常见的数据结构有哪些,在哪些场景下应用它们?A. 大部分人都会遗漏树和图这两种数据结构。树和图都是很有用的数据结构。如果你在回答中提及……继续阅读 »

勤劳的小蚂蚁 4天前 15浏览 0评论0个赞

技术杂谈

HashMap为什么是线程不安全的?

HashMap为什么是线程不安全的?
一直以来只是知道 HashMap 是线程不安全的,但是到底 HashMap 为什么线程不安全,多线程并发的时候在什么情况下可能出现问题?HashMap 底层是一个 Entry 数组,当发生 hash 冲突的时候,hashmap 是采用链表的方式来解决的,在对应的数组位置存放链表的头结点。对链表而言,新加入的节点会从头结点加入。javado……继续阅读 »

勤劳的小蚂蚁 5天前 14浏览 0评论0个赞

技术杂谈

java基础系列–集合类库

java基础系列–集合类库
1、概述  Java 的集合类库很是丰富,囊括了大部分的常见数据结构形式,让我们可以有目的性的选择适合当前业务场景和功能场景的集合类。合适的集合框架可以最大程度的提升执行速度和效率。  Java集合类库中所有的集合类都始于 Collection 接口和 Map 接口,前者表示单值集合,后者表示映射集合(双值集合)。  Java……继续阅读 »

勤劳的小蚂蚁 6天前 13浏览 0评论0个赞

技术杂谈

集合系列—LinkedList源码分析

集合系列—LinkedList源码分析
上篇我们分析了 ArrayList 的底层实现,知道了 ArrayList 底层是基于数组实现的,因此具有查找修改快而插入删除慢的特点。本篇介绍的LinkedList是 List 接口的另一种实现,它的底层是基于双向链表实现的,因此它具有插入删除快而查找修改慢的特点,此外,通过对双向链表的操作还可以实现队列和栈的功能。LinkedList的底层……继续阅读 »

勤劳的小蚂蚁 7天前 17浏览 0评论0个赞

技术杂谈

ArrayList和LinkedList的区别

ArrayList和LinkedList的区别
ArrayList 和 Vector 使用了数组的实现,可以认为 ArrayList 或者 Vector 封装了对内部数组的操作,比如向数组中添加,删除,插入新的元素或者数据的扩展和重定向。LinkedList使用了循环双向链表数据结构。与基于数组 ArrayList 相比,这是两种截然不同的实现技术,这也决定了它们将适用于完全不同的工作场景……继续阅读 »

勤劳的小蚂蚁 7天前 14浏览 0评论0个赞

技术杂谈

Java中HashMap底层数据结构

Java中HashMap底层数据结构
HashMap 也是我们使用非常多的 Collection,它是基于哈希表的 Map 接口的实现,以 key-value 的形式存在。在 HashMap 中,key-value 总是会当做一个整体来处理,系统会根据 hash 算法来来计算 key-value 的存储位置,我们总是可以通过 key 快速地存、取 value。下面就来分析 HashM……继续阅读 »

勤劳的小蚂蚁 1周前 (02-11) 15浏览 0评论0个赞

技术杂谈

Java TreeMap 源码解析

Java TreeMap 源码解析
这篇文章开始介绍 Map 系列另一个比较重要的类 TreeMap。 大家也许能感觉到,网络上介绍 HashMap 的文章比较多,但是介绍 TreeMap 反而不那么多,这里面是有原因:一方面 HashMap 的使用场景比较多;二是相对于 HashMap 来说,TreeMap 所用到的数据结构更为复杂。 废话不多说,进入正题。签名(signat……继续阅读 »

勤劳的小蚂蚁 1周前 (02-10) 20浏览 0评论0个赞

技术杂谈

Java 7 / 8 中的 HashMap 和 ConcurrentHashMap 全解析( 上 )

Java 7 / 8 中的 HashMap 和 ConcurrentHashMap 全解析( 上 )
网上关于 HashMap 和 ConcurrentHashMap 的文章确实不少,不过缺斤少两的文章比较多,所以才想自己也写一篇,把细节说清楚说透,尤其像 Java8 中的 ConcurrentHashMap,大部分文章都说不清楚。终归是希望能降低大家学习的成本,不希望大家到处找各种不是很靠谱的文章,看完一篇又一篇,可是还是模模糊糊。阅读建……继续阅读 »

勤劳的小蚂蚁 1周前 (02-09) 18浏览 0评论0个赞

技术杂谈

java程序员被误导的一个概念,90%人不知道

java程序员被误导的一个概念,90%人不知道
我们经常听说 List 是有序且重复的,Set 是无序不重复的。这里有个误区,这里说的顺序有两个概念,一是按添加的顺序排列,二是按自然顺序 a-z 排列。Set 并不是无序的,传统说的 Set 无序是指 HashSet,它不能保证元素的添加顺序,更不能保证自然顺序,而 Set 的其他实现类是可以实现这两种顺序的。保证元素添加的顺序:Linke……继续阅读 »

勤劳的小蚂蚁 2周前 (02-08) 15浏览 0评论0个赞

技术杂谈

优化哈希策略

优化哈希策略
概述散列策略会对 HashMap 或 HashSet 之类的散列集合的性能产生直接的影响。内置的散列(又称哈希)函数都是通用的,在大多数使用情况下都能表现很好。但是我们能不能做的更好呢,特别是当你对某个用例产生了很好的想法时?测试一个散列策略在先前的一篇文章中,我研究了一些测试散列策略的方法,其中特别注意了一种“正交位”优化的散列策……继续阅读 »

勤劳的小蚂蚁 2周前 (02-07) 17浏览 0评论0个赞

技术杂谈

Java集合框架综述

Java集合框架综述
最近被陆陆续续问了几遍 HashMap 的实现,回答的不好,打算复习复习 JDK 中的集合框架,并尝试分析其源码,这么做一方面是这些类非常实用,掌握其实现能更好的优化我们的程序;另一方面是学习借鉴 JDK 是如何实现了这么一套优雅高效的类库,提升编程能力。在介绍具体适合类之前,本篇文章对 Java 中的集合框架做一个大致描述,从一个高的角度俯……继续阅读 »

勤劳的小蚂蚁 2周前 (02-06) 16浏览 0评论0个赞

技术杂谈

深入分析 ConcurrentHashMap 1.8 的扩容实现

深入分析 ConcurrentHashMap 1.8 的扩容实现
ConcurrentHashMap相关的文章写了不少,有个遗留问题一直没有分析,也被好多人请教过,被搁置在一旁,即如何在并发的情况下实现数组的扩容。什么情况会触发扩容当往 hashMap 中成功插入一个 key/value 节点时,有可能触发扩容动作:1、如果新增节点之后,所在链表的元素个数达到了阈值 8,则会调用 treeifyB……继续阅读 »

勤劳的小蚂蚁 2周前 (02-05) 28浏览 0评论0个赞

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00