2 胡亚洲

尚未进行身份认证

我要认证

中北大学毕业生

等级
TA的排名 47w+

String、StringBuffer与StringBuilder之间区别

String、StringBuffer与StringBuilder之间区别String StringBuffer StringBuilder String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量优先的内存空间 StringBuffer是可变类,和线程安全的字符串操作类,任何对它指向的字符串的操作都不会产生新的对象。每个StringBuffer对象都有一定的缓冲区容量,当字符串大小没有超过容量时,...

2020-06-30 19:36:49

Java中队列的解析

Java中队列的解析定义队列是一种特殊的线性表,遵循的原则就是“先入先出”。在我们日常使用中,经常会用来并发操作数据。在并发编程中,有时候需要使用线程安全的队列。如果要实现一个线程安全的队列通常有两种方式:一种是使用阻塞队列,另一种是使用线程同步锁。什么是阻塞队列?假设有一个面包房,里面有一个客人吃面包,一个师傅烤面包。篮子里面最多放2个面包,师傅考完了面包放到篮子里,而客人吃面包则从篮子里面往外拿,为了保证客人吃面包的时候篮子里有面包或者师傅烤面包的时候篮子不会溢出,这时候就需要引用出来阻塞队列的

2020-06-30 19:29:54

String StringBuffer StringBuilder区别与联系

String StringBuffer StringBuilder String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量优先的内存空间 StringBuffer是可变类,和线程安全的字符串操作类,任何对它指向的字符串的操作都不会产生新的对象。每个StringBuffer对象都有一定的缓冲区容量,当字符串大小没有超过容量时,不会分配新的容量,当字符串大小超过容量时,会自动增加容量 可变类,速度更快...

2020-06-28 13:39:29

HashMap tableSizeFor()源码解析

tableSizeFor的功能(不考虑大于最大容量的情况)是返回大于输入参数且最近的2的整数次幂的数。比如10,则返回16。如果大于等于最大容量的话返回最大容量。该算法源码如下:static final int tableSizeFor(int cap) { int n = cap - 1; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>>

2020-06-18 09:44:55

HashMap put()方法源码解析

HashMap put()方法总结:①.判断键值对数组table[i]是否为空或为null,否则执行resize()进行扩容;②.根据键值key计算hash值得到插入的数组索引i,如果table[i]==null,直接新建节点添加,转向⑥,如果table[i]不为空,转向③;③.判断table[i]的首个元素是否和key一样,如果相同直接覆盖value,否则转向④,这里的相同指的是hashCode以及equals;④.判断table[i] 是否为treeNode,即table[i] 是否是红

2020-06-17 19:17:43

java队列

java队列——queue详细分析Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Deque接 口。Queue的实现1、没有实现的阻塞接口的LinkedList: 实现了java.util.Queue接口和java.util.AbstractQue...

2020-04-16 09:52:15

一张图彻底搞懂MySQL的 explain

一张图彻底搞懂MySQL的 explainexplain关键字可以模拟MySQL优化器执行SQL语句,可以很好的分析SQL语句或表结构的性能瓶颈。explain的用途1. 表的读取顺序如何2. 数据读取操作有哪些操作类型3. 哪些索引可以使用4. 哪些索引被实际使用5. 表之间是如何引用6. 每张表有多少行被优化器查询......explain的执行效果mysq...

2020-03-26 20:41:51

StringBuilder和StringBuffer的区别

StringBuilder和StringBuffer的区别在哪里?当接触这个问题的时候,我们可能第一反应就是,StringBuilder是线程不安全的,StringBuffer是线程安全的为什么StringBuilder是线程不安全,StringBuffer是线程安全?针对这个问题,大部分的人可能就无言以对了,我们只知道StringBuilder是线程不安全的,StringBuffer是线...

2020-03-20 14:26:24

Spring中的aware接口

Spring中的aware接口Spring中有很多继承于aware中的接口,这些接口到底是做什么用到的。awre.pngaware,翻译过来是知道的,已感知的,意识到的,所以这些接口从字面意思应该是能感知到所有Aware前面的含义。先举个BeanNameAware的例子,实现BeanNameAware接口,可以让该Bean感知到自身的BeanName(对应Spring容器...

2020-03-20 10:43:05

Java中Cloneable的使用

Java中Cloneable的使用1. Cloneable的用途Cloneable是标记型的接口,它们内部都没有方法和属性,实现 Cloneable来表示该对象能被克隆,能使用Object.clone()方法。如果没有实现 Cloneable的类对象调用clone()就会抛出CloneNotSupportedException。2. 克隆的分类 浅克隆(shallow clone...

2020-03-20 10:37:19

Windows下查看进程及结束进程命令

Windows下查看进程及结束进程命令1)查看占用8080端口的进程号>netstat –aon | findstr“8080”结果:TCP0.0.0.0:80800.0.0.0:0LISTENING3500可知,进程号为3500的进程占用了8080端口可以使用命令tasklist | finds...

2019-12-06 16:02:30

分布式系统进化历史

一个成熟的大型分布式系统,并不是在其开始时,就设计为这样,而是在之后的不断优化,迭代而不断的进化成熟的。在一个系统刚开始运行时,可能用户数,业务处理等都还比较简单,因此由一台服务器就能支撑起其正常的业务处理。其系统架构模型可能如下所示:1,单应用架构其应用服务和数据库服务,都部署在同一台服务器上。此时应用的实现简单,能够快速上线,为用户提供服务。比如很简单的可以使用Tomcat+M...

2019-09-25 17:30:54

对SQL语句中case when...then...else...end的理解

SQL利用Case When Then多条件判断CASEWHEN 条件1 THEN 结果1WHEN 条件2 THEN 结果2WHEN 条件3 THEN 结果3WHEN 条件4 THEN 结果4.........WHEN 条件N THEN 结果NELSE 结果XENDCase具有两种格式。简单Case函数和Case搜索函数。...

2019-08-21 14:41:25

Mysql中变量的定义

MySql中的变量定义根据mysql手册,mysql的变量分为两种:系统变量和用户变量。但是在实际使用中,还会遇到诸如局部变量、会话变量等概念。根据个人感觉,mysql变量大体可以分为四种类型:一、局部变量。局部变量一般用在sql语句块中,比如存储过程的begin/end。其作用域仅限于该语句块,在该语句块执行完毕后,局部变量就消失了。局部变量一般用declare来声明,可以使用d...

2019-08-21 14:39:48

Oracle中的SQL分页查询原理和方法详解

版权声明:http://blog.csdn.net/anxpp https://blog.csdn.net/anxpp/article/details/51534006本文分析并介绍Oracle中的分页查找的方法。Oracle中的表,除了我们建表时设计的各个字段,其实还有两个字段(此处只介绍2个),分别是ROWID(行标示符)和ROWNUM(行号),即使我们使用DESC...

2019-07-26 20:41:22

File构造方法总结

File构造方法有3种:File f1 = new File("F:/file/f1.txt");后面直接跟绝对路径,前提是F/flle路径存在,否则会报错;File f2 = new File("F:/file","f2.txt");2个参数,第一个参数写文件路径(可以是前面定义好的,也可以是存在的前面没定义的(C:/));第2个参数为文件名字。File f3 = new File(Fil...

2019-07-19 15:30:56

Oracle数据库第一范式、第二范式、第三范式区别

第一范式: 一个表中,每个【列的值是不能再分割的】. 例如:我们设计的表中有一个列是:爱好 这个列的值可能会是这样:足球篮球乒乓球 但是这值是可以再分割的:足球、篮球、乒乓球 所以这种设计是不满足第一范式 第二范式: 第二范式是在满足第一范式的基础上 表中的【非主键列都必须依赖...

2019-07-19 15:27:50

list set map归纳总结

Arraylist 和 Linkedlist 都是按顺序存储,可以重复。单列集合HashSet 存放基本数据类型自动排序,不能存放重复数据,存放引用数据类型是按hashcode方法和equals方法存放(无序,按hashcode方法);LinkedHashSet 存放基本数据类型和引用数据类型时按顺序排序,不能存放重复数据。(是否重复用hashcode方法和equals方法)TreeSe...

2019-07-19 15:08:22
勋章 我的勋章
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。