自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 HashMap之tableSizeFor方法图解

在看HashMap源码时,注意到一个问题,容量必须是2的整数幂,为了保证这一点,专门给出了一个巧妙而高效的方法tableSizeFor。不妨想一下,如果是自己解决这个问题,该怎么解决?给定一个int类型的整数n,如何求出不小于它的最接近的2的整数幂m,比如给定10得出16,给定25得出32?普通人的简单粗暴方式普通人的想法可能比较简单,直接对n求以2为底的对数,结果m是double类型,若小数部分为0,则m就是我们要求的指数;小数部分不为0,则对m向上取整,最后直接求2的m次幂。首先遇到的问题是

2021-03-11 14:18:43 106

原创 阅读源码,HashMap回顾

本文一是总结前面两种集合,补充一些遗漏,再者对HashMap进行简单介绍。回顾因为前两篇ArrayList和LinkedList都是针对单独的集合类分析的,只见树木未见森林,今天分析HashMap,可以结合起来看一下java中的集合框架。下图只是一小部分,而且为了方便理解去除了抽象类。Java中的集合(有时也称为容器)是为了存储对象,而且多数时候存储的不止一个对象。可以简单的将Java集合分为两类:一类是Collection,存储的是独立的元素,也就是单个对象。细分之下,常见的有List,S

2021-03-11 14:11:20 70

原创 阅读源码,通过LinkedList回顾基础

前言本文基于jdk1.8书接上回,在简单介绍ArrayList的时候,提到了ArrayList实现了RandomAccess接口,拥有随机访问的能力,当时说到了这个接口配合LinkedList理解更容易。今天就来还愿了,开始阅读LinkedList。LinkedList也算我们比较常用的几个集合之一了,对普通程序员来说,List list1 = new ArrayList()List list2 = new LinkedList(),该怎么选择?其实二者最大的区别在于实现方式的不同,只看

2020-11-03 23:18:12 109

原创 阅读源码,从ArrayList开始

前言为啥要阅读源码?一句话,为了写出更好的程序。一方面,只有了解了代码的执行过程,我们才能更好的使用别人提供的工具和框架,写出高效的程序。另一方面,一些经典的代码背后蕴藏的思想和技巧很值得学习,通过阅读源码,有助于提升自己的能力。当然,功利的讲,面试都喜欢问源码,阅读源码也有助于提升通过面试的概率。结合今天的主题,一个很简单的问题,在刚学习集合时,我们都使用过如下代码,但是下面几行代码有区别吗?List list1 = new ArrayList();List list2 = new Array

2020-10-09 20:34:47 93

原创 MySQL中事务和事务的隔离级别

本文主要是帮助理解相关知识,没有具体的操作和代码。事务事务就是一组操作,这组操作要么全部成功,要么全部失败。最经典的例子就是银行转账:张三给李四转账100,对用户来说,就是一个操作。但对应到数据库中,至少需要三步://检查张三账户余额是否大于等于100//张三账户-100//李四账户+100这三个操作可以没有顺序,但是必须全部成功或者全部失败。否则就可能导致张三损失100李四没收到,或者李四收到100但是张三没扣款成功(银行损失100)。MySQL默认引擎InnoDB,支持事务;MyI

2020-09-02 19:28:36 189

原创 Centos7安装MySQL8.0(RPM方式)

人生处处皆学问,工作也是如此!过去不止一次在Linux上安装MySQL,可以说轻车熟路,但是写篇文章总结一下,发现有很多细节值得学习!安装包选择为什么用rpm?在Linux系列上安装软件一般有源码编译安装、rpm(或者dpkg)、yum等方式,优劣主要体现在是否需要网络环境、是否能自动检测依赖,升级和卸载是否方便等。作为非运维人员,也需基本了解。源码安装支持离线,但即使可以自动创建 Makefile等文件简化安装,整个过程也比较复杂,升级和卸载更麻烦。针对一些没有官方释出的软件,只能选择这种方式。

2020-09-02 19:01:25 812

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除