- 浏览: 23338 次
- 性别:
- 来自: 广州
最新评论
-
zhanxuzhao2015:
...
java hashCode详解 -
sprite311:
...
HashMap原理、源码解析 -
crd1991:
ycq__110 写道字太小了,总结不错已经把字体放大了,谢谢 ...
java hashCode详解 -
ycq__110:
字太小了,总结不错
java hashCode详解 -
crd1991:
jilen 写道这种同步开销,我认为还不如不使用延迟加载。如果 ...
单例模式-Singleton
文章列表
hashCode就是我们所说的散列码,使用hashCode算法可以帮助我们进行高效率的查找,例如HashMap,我在前面的文章有介绍过,这里就不再啰嗦了。说hashCode之前,先来看看Object类。
我们知道,Object类是java程序中所有类的直接或间接父类,处于类层次的最高点。在Object类里定义了很多我们常见的方法,包括我们要讲的hashCode方法,如下
public final native Class<?> getClass();
public native int hashCode();
public boolean equ ...
0.前言
本文主要面向初学者,网上这方面的文章也很多,之所以还写这个,一方面是给有需要的人,另一方面是巩固自己的知识,写写记得更牢嘛,也为去找实习找工作打点基础。这主要是从我的角度去理解工厂方法,肯定有很 ...
0.前言
在一年多前就开始学习设计模式了,主要看的是GoF的那本书《设计模式-可复用面向对象软件的基础》,很好的一本书。当时没打算开博客,所以把所有笔记都写到了OneNote上,现在想好好整理下,尽量都写到博客里面来,一方面希望对他人有帮助,一方面也是自己知识的一个积累和巩固的过程。
1.正文
在23个设计模式中,最简单应该就是单例(Singleton)模式了,个人感觉学习设计模式才能更好地理解各种源码的设计,提高代码的复用性以及提高自己的编程能力。
意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
对一些类来说,只有一个实例是很重要的。比如说线程池、缓 ...
生日概率问题,记得高中课本有出现过,一道挺有趣的数学概率题。假如一个班里面有50个人,问至少有两个人生日相同的概率大还是没有生日相同的概率大呢?(不考虑闰年,一年为365天)
很多人的第一反应就是:我们班大概也 ...
一、前言
HashMap是Map实现中最常使用的,具有快速存取的优点,所以很有必要深入到源码去了解其实现原理。
本文的内容包括:分析HashMap的数据结构和HashMap的常用方法的源码分析。
二、HashMap的数据结构
HashMap
可以理解为由数组和链表组成的存储结构,如图
在X轴方向上是一个数组,Y方向是链表。一个节点的信息包括hash、key、value和next。
static class Entry<K,V> implements Map.Entry<K,V> {
...