首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
二月鸟就是我
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
图解ConcurrentHashMap
Concurrent翻译过来是并发的意思,字面理解它的作用是处理并发情况的 HashMap,在介绍它之前先回顾下之前的知识。通过前面两篇学习,我们知道多线程并发下 HashMap 是不安全的(如死循环),更普遍的是多线程并发下,由于堆内存对于各个线程是共享的,而 HashMap…
HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!
Map 这样的 Key Value 在软件开发中是非常经典的结构,常用于在内存中存放数据。 本篇主要想讨论 ConcurrentHashMap 这样一个并发容器,在正式开始之前我觉得有必要谈谈 HashMap,没有它就不会有后面的 ConcurrentHashMap。 众所周知…
学会反射后,我被录取了(干货)
有反必有正,就像世间的阴和阳,计算机的0和1一样。天道有轮回,苍天...(净会在这瞎bibi) 在学习反射之前,先来了解正射是什么。我们平常用的最多的 new 方式实例化对象的方式就是一种正射的体现。假如我需要实例化一个HashMap,代码就会是这样子。 某一天发现,该段程序不…
HashMap的这些巧夺天工的设计,你能想到吗?
HashMap作为程序员最常用的数据结构,包含了设计者的许多精巧构思,看完源码让人直呼我怎么没想到,快来一块学习一下。 1. 有没有一种数据结构,增删改查都快? 我们都知道数组的查询比较快,因为地址是连续的,可以通过下标直接找到元素。不过增删较慢,每次在数组中间增删一个元素,都…
类加载器中的双亲委派模型详解
从JVM的角度看,类加载器主要有两类:Bootstrap ClassLoader和其他类加载,Bootstrap ClassLoader是C++语言实现,是虚拟机自身的一部分;其他类加载器都是Java语言实现,不属于虚拟机,全部继承自抽象类java.lang.ClassLoad…
干货 | Java8 新特性教程
也希望学完本系列教程的小伙伴能够熟练掌握和应用 Java8 的各种特性,使其成为在工作中的一门利器。废话不多说,让我们一起开启 Java8 新特性之旅吧! Java 8 允许我们通过 default 关键字对接口中定义的抽象方法提供一个默认的实现。 在上面这个接口中,我们除了定…
《我们一起进大厂》系列-HashMap
美丽迷人的面试官您好,您见笑了,全靠看了敖丙的《吊打面试官》系列,不然我还真的回答不上很多原本的知识盲区,他真的有点东西。 切,这也太看不起我了吧,居然问这种低级问题,不过还是要好好回答。 嗯嗯面试官,我知道HashMap是我们非常常用的数据结构,由数组和链表组合构成的数据结构…
魔鬼在细节,理解Java并发底层之AQS实现
公平锁:多个线程采用先到先得的公平方式竞争锁。每次加锁前都会检查等待队列里面有没有线程排队,没有才会尝试获取锁。 非公平锁:当一个线程采用非公平的方式获取锁时,该线程会首先去尝试获取锁而不是等待。如果没有获取成功,才会进入等待队列 CANCELLED(1):表示当前节点已取消调…
Java 8 中 Map 骚操作之 merge() 的用法
Java 8 最大的特性无异于更多地面向函数,比如引入了 lambda等,可以更好地进行函数式编程。前段时间无意间发现了 map.merge() 方法,感觉还是很好用的,此文简单做一些相关介绍。首先我们先看一个例子。 假设我们有这么一段业务逻辑,我有一个学生成绩对象的列表,对象…
大家都说 Java 反射效率低,你知道原因在哪里么
我们在 Java 开发中,难免会接触到反射,而在一些框架中,反射的运用更是常见。我相信,每次提到反射,大家的第一反应一定是反射效率低,尽量少使用。 这篇文章就来探索一下这些问题。 由于本机上安装的是 openjdk 12,所以这里就使用 openjdk 12 源码进行分析。 我…