随笔分类 - java基础
发表于 2021-03-10 00:14阅读:227评论:1推荐:0
摘要:深入解析synchronized 1 常见的几个并发问题 1.可见性问题 案例演示:一个线程根据boolean类型的标记flag, while循环,另一个线程改变这个flag变量的值,另一个线程并不会停止循环。 /** * @author WGR * @create 2020/12/22 -- 20
阅读全文 »
发表于 2020-08-08 23:46阅读:662评论:0推荐:0
摘要:CurrentHashMap的实现原理 hash表 介绍 哈希表就是一种以 键-值(key-indexed) 存储数据的结构,我们只要输入待查找的值即key,即可查找到其对应的值。 哈希的思路很简单,如果所有的键都是整数,那么就可以使用一个简单的无序数组来实现:将键作为索引,值即为其对应的值,这样就
阅读全文 »
发表于 2020-06-16 14:55阅读:244评论:0推荐:0
摘要:进程、线程、多线程概念: 1、进程: **狭义定义:**进程就是一段程序的执行过程。 **广义定义:**进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 简单的来讲进程的概念主要有两点:第
阅读全文 »
发表于 2020-03-12 00:06阅读:159评论:0推荐:0
摘要:Jdk1.8之前: jdk1.8之前HashMap底层是数组跟链表,结合以前就是链表散列HashMap通过key的hashCode经过扰动函数处理的到hash值,然后通过(数组长度-1)&hash值判断当前元素存放的位置,如果当前元素存在的话,就判断该元素与要存入的元素的hash值以及key是否相同
阅读全文 »
发表于 2020-03-08 20:43阅读:477评论:0推荐:0
摘要:ArrayList的常用方法 add:增加 @Test public void test1(){ ArrayList heros=new ArrayList(); for (int i=0;i<=5;i++){ heros.add(new Hero("hero"+i)); } System.out.
阅读全文 »
发表于 2020-03-08 11:54阅读:289评论:0推荐:0
摘要:关于StringBuffer和StringBuilder的使用: 1.对比String、StringBuffer、StringBuilder三者的效率: 从高到低排列:StringBuilder > StringBuffer > String /* 对比String、StringBuffer、Str
阅读全文 »
发表于 2020-03-07 23:45阅读:219评论:0推荐:0
摘要:String类的常用方法: int length():返回字符串的长度: return value.lengthchar charAt(int index): 返回某索引处的字符return value[index]boolean isEmpty():判断是否是空字符串:return value.l
阅读全文 »