JavaHashing:从重写HashCode到可变对象原创lee锅外的大佬2019-08-05点击左上角蓝字,关注“锅外的大佬”专注分享国外最新技术内容这是一篇关于hashCode方法,可变对象和内存泄漏问题的文章。1.重写hashCode()和equals()的契约每个java对象都有两个非常重要的方法,比如hashCode()和equals()方法。这些方法旨在根据其特定的一般规则进行重写。
分类:
编程语言 时间:
2020-09-03 16:53:31
阅读次数:
48
1.前言ThreadLocal也是一个使用频率较高的类,在框架中也经常见到,比如Spring。有关ThreadLocal源码分析的文章不少,其中有个问题常被提及:ThreadLocal是否存在内存泄漏?不少文章对此讲述比较模糊,经常让人看完脑子还是一头雾水,我也有此困惑。因此找时间跟小伙伴讨论了一番,总算对这个问题有了一定的理解,这里记录和分享一下,希望对有同样困惑的朋友们有所帮助。当然,若有理解
分类:
其他好文 时间:
2020-08-28 14:48:29
阅读次数:
40
Map接口: 1、实现Map接口的类用来存储键(key)-值(value)对 2、Map接口的实现类有HashMap和TreeMap 3、Map类中存储的键-值对通过键来标识,所以键值不能重复 常用方法类: Object put(Object key,Object value); Object ge ...
分类:
编程语言 时间:
2020-08-28 11:49:39
阅读次数:
61
该工具类用于分页Page对象转为Map,然后存储到Redis中 import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util. ...
分类:
其他好文 时间:
2020-08-27 11:46:52
阅读次数:
86
阅读源码是每个优秀开发工程师的必经之路,那么这篇文章就来讲解下为什么要阅读源码以及如何阅读源码。首先来说下为什么要读源码,有学习源码的必要吗?为什么要阅读源码?关于为什么阅读和学习源码,我个人认为可能有以下几点:(一)吊打面试官,应对面试为了找到更好的工作,应对面试,因为在面试中肯定会问到源码级别的问题,比如:为什么HashMap是线程不安全的?如果你没有阅读过源码,面试官可能会对回答的结果不满意
分类:
其他好文 时间:
2020-08-26 18:41:37
阅读次数:
43
正文加载因子是哈希表在其容量自动增加之前可以达到多满的一种尺度,它衡量的是一个散列表的空间的使用程度,负载因子越大表示散列表的装填程度越高,反之愈小。对于使用链表法的散列表来说,查找一个元素的平均时间是O(1+a)。因此如果负载因子越大,对空间的利用更充分,然而后果是查找效率的降低;如果负载因子太小,那么散列表的数据将过于稀疏,对空间造成严重浪费。如果你看过源代码,你会发现在初始条件下,HashM
分类:
其他好文 时间:
2020-08-25 15:58:05
阅读次数:
58
经常会看到说HashMap是线程不安全的,ConcurrentHashMap是线程安全的等等说法,不禁有个疑问,HashMap 为什么是线程不安全的呢? 下面为jdk1.8源码分析 final V putVal(int hash, K key, V value, boolean onlyIfAbse ...
分类:
编程语言 时间:
2020-08-20 18:18:26
阅读次数:
102
import java.sql.SQLException; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; import java.util.Random; import java.util. ...
分类:
数据库 时间:
2020-08-19 19:39:50
阅读次数:
82
武培轩推荐搜索Java数据结构SpringBootMySQLRedisNginxif快还是switch快?HashMap的初始化size要不要指定,指定之后性能可以提高多少?各种序列化方法哪个耗时更短?无论出自何种原因需要进行性能评估,量化指标总是必要的。在大部分场合,简单地回答谁快谁慢是远远不够的,如何将程序性能量化呢?这就需要我们的主角JMH登场了!JMH简介JMH(JavaMicrobenc
分类:
其他好文 时间:
2020-08-19 19:30:22
阅读次数:
57
经典规则:如果重写了equals,必须重写hashCode 为什么??? 这个规则考虑的应用场景:如果你的对象可能放入HashMap,HashSet,不重写会出问题 问题场景: new一个对象,重写了equals,但是没有重写hashCode,再new一个对象,原对象.equals(新对象)等于tr ...
分类:
其他好文 时间:
2020-08-18 13:18:40
阅读次数:
49