我的知识树
文章平均质量分 87
个人知识积累
卑微猿同学
这个作者很懒,什么都没留下…
展开
-
MongoDB常用操作
MongoDB 常用操作原创 2023-01-09 17:27:20 · 1491 阅读 · 0 评论 -
我的知识树
知识整理原创 2022-11-20 00:23:04 · 347 阅读 · 0 评论 -
多线程高并发笔记
并发特性 + 锁 + 线程池原创 2022-11-19 19:52:43 · 1078 阅读 · 0 评论 -
MySQL调优笔记
MySQL 调优相关知识整理原创 2022-11-01 13:41:36 · 369 阅读 · 0 评论 -
Redis学习笔记整理_01
redis 数据类型,简单的特性原创 2022-10-20 16:34:29 · 356 阅读 · 0 评论 -
JVM内存模型
概述对于从事C、C++程序开发的开发人员来说,在内存管理领域,他们既是拥有最高权力的“皇帝”又是从事最基础工作的“劳动人民”——既拥有每一个对象的“所有权”,又担负着每一个对象生命开始到终结的维护责任。对于Java程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题,由虚拟机管理内存这一切看起来都很美好。不过,也正是因为Java程序员把内存控制的权力交给了Java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解原创 2021-05-20 16:43:14 · 144 阅读 · 1 评论 -
java笔记_从String中移除空白字符
String对象为final类,所以字符串不能修改,使用下列方法后会得到一个新的字符串trim()删除字符串开头和结尾的空格strip()删除字符串开头和结尾的空格stripLeading()只删除字符串开头的空格stripTrailing()只删除字符串的结尾的空格replace()用新字符替换所有目标字符replaceAll()将所有匹配的字符替换为新字符。此方法将正则表达式作为输入,以标识需要替换的目标子字符串replaceFirst(.原创 2021-05-06 10:00:51 · 325 阅读 · 2 评论 -
Java笔记_HashMap
以下内容从网上摘抄整理而来,仅用于本人知识积累二进制计算基础知识1. << : 左移运算符,num << 1,相当于num乘以2 低位补02. >> : 右移运算符,num >> 1,相当于num除以2 高位补03. >>> : 无符号右移,忽略符号位,空位都以0补齐4. % : 模运算 取余5. ^ : 位异或 第一个操作数的的第n位于第二个操作数的第n位相反,那么结果的第n为也为1,否则为06. & : 与运算原创 2021-05-07 17:18:48 · 224 阅读 · 2 评论 -
Java笔记_Collections.synchronizedMap、Hashtable与ConcurrentHashMap
以下内容为从网上摘抄整理而来,仅用于本人知识积累Collections.synchronizedMapCollections.synchronizedMap是怎么实现线程安全的?在SynchronizedMap内部维护了一个普通对象Map,还有排斥锁mutex,如图Collections.synchronizedMap(new HashMap<>(16));我们在调用这个方法的时候就需要传入一个Map,可以看到有两个构造器,如果你传入了mutex参数,则将对象排斥锁赋值为传入的.原创 2021-05-10 11:12:54 · 622 阅读 · 0 评论 -
Java笔记_ArrayList源码解析
以下内容为从网上摘抄整理而来,仅用于本人知识积累一、简介ArrayList就是数组列表,主要用来装载数据,当我们装载的是基本类型的数据int,long,boolean,short,byte…的时候我们只能存储他们对应的包装类,它的主要底层实现是数组Object[] elementData。与它类似的是LinkedList,和LinkedList相比,它的查找和访问元素的速度较快,但新增,删除的速度较慢。ArrayList继承于 AbstractList ,实现了 List, RandomAcce.原创 2021-05-10 17:22:01 · 225 阅读 · 3 评论 -
Java笔记_LinkedList
以下内容从网上摘抄整理而来,仅用于本人知识积累一、简介LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。LinkedList底层的链表结构使它支持高效的插入和删除操作;LinkedList 实现 List 接口,能对它进行队列操作。LinkedList 实现 Deque 接口,使得LinkedList类也具有队列的特性,即能将LinkedList当作双端队列使用。LinkedList 实现了Cloneab.原创 2021-05-11 15:06:12 · 160 阅读 · 1 评论 -
Java笔记_容器介绍
Java 集合,也称作容器,主要是由两大接口 (Interface) 派生出来的:Collection 和 Map顾名思义,容器就是用来存放数据的。那么这两大接口的不同之处在于:Collection 存放单一元素,由List、Queue、Set三个接口区分不同的集合特征,然后由下面的具体的类来实现对应的功能。Map 存放 key-value 键值对,可以用键对象来查找值。特点对象封装数据,对象多了也需要存储。集合用于存储对象。对象的个数确定可以使用数组,对象的个数不确定的可以用原创 2021-05-12 16:21:56 · 260 阅读 · 2 评论 -
Java笔记_堆
原文链接PriorityQueue,优先队列,也就是堆,Heap。什么是堆?堆其实就是一种特殊的队列——优先队列。普通的队列游戏规则很简单:就是先进先出;但这种优先队列搞特殊,不是按照进队列的时间顺序,而是按照每个元素的优先级来比拼,优先级高的在堆顶。这也很容易理解吧,比如各种软件都有会员制度,某软件用了会员就能加速下载的,不同等级的会员速度还不一样,那就是优先级不同呀。还有其实每个人回复微信消息也是默默的把消息放进堆里排个序:先回男朋友女朋友的,然后再回其他人的。这里要区别于操作系统里的转载 2021-05-13 11:58:19 · 90 阅读 · 0 评论 -
java笔记_并发概念
以下内容为从网上摘抄整理而来,仅用于本人知识积累进程进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进程,而 main 函数所在的线程就是这个进程中的一个线程,也称主线程。如下图所示,在 windows 中通过查看任务管理器的方式,我们就可以清楚看到 window 当前运行的进程(.exe 文件的运行)。线程线程与进程相似,但线程是一个比进.转载 2021-05-14 17:31:20 · 102 阅读 · 0 评论 -
java笔记_并发入门
以下内容为从网上摘抄整理而来,仅用于本人知识积累多线程概述线程是独立的执行路径;在程序运行时,即使没有自己创建线程,后台也会有多个线程,比如主线程main()、gc线程(守护线程);main()称之为主线程,为程序的总入口,用于执行整个程序;在一个进程中,如果开辟了多个线程,线程的运行是由调度器安排调度,调度器是与操作系统紧密相关的,先后顺序不能人为干预;对同一份资源操作时,可能会存在资源抢占的问题,需要加入并发控制;线程会带来额外开销,比如cpu调度时间,并发控制开销等;每个线程在自己.转载 2021-05-18 11:41:04 · 121 阅读 · 0 评论