![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
清风朝阳
Keep studying
展开
-
排序算法总结
package sort;import java.util.ArrayList;import java.util.Arrays;public class Sort { public static void main(String[] args) { int[] arr = new int[20]; int index = 0; for (int i = 20; i > 0; i--)// 从大到小构建数组 arr[index++] = i; System.out.p.原创 2020-07-27 21:01:58 · 108 阅读 · 0 评论 -
Git版本控制
部署:cd publicgit add .git commit -m “yyyy/mm/dd-hh:mm”git push -u origin master更新:用git工具执行,每次在根目录输入hugo 初始化一下hugo然后进入public文档cd public打开git Bash here相继输入以下代码git init(如果报fatal: not a git repository (or any of the parent directories): .git)git原创 2020-07-19 17:08:06 · 171 阅读 · 0 评论 -
Redis
redis 简介简单来说 redis 就是一个数据库,不过与传统数据库不同的是 redis 的数据是存在内存中的,所以读写速度非常快,因此 redis 被广泛应用于缓存方向。另外,redis 也经常用来做分布式锁。redis 提供了多种数据类型来支持不同的业务场景。除此之外,redis 支持事务 、持久化、LUA 脚本、LRU 驱动事件、多种集群方案。用 redis缓存的原因主要从“高性能”和“高并发”这两点来看待这个问题。高性能:假如用户第一次访问数据库中的某些数据。这个过程会比较慢,因为是从硬转载 2020-07-06 17:12:16 · 186 阅读 · 0 评论 -
ArrayList和LinkedList
ArrayList/** * Default initial capacity. * ArrayList 默认的数组容量 */ private static final int DEFAULT_CAPACITY = 10; /** * Shared empty array instance used for empty instances. * 用于空实例的共享空数组实例 */ private static final转载 2020-06-28 14:51:51 · 153 阅读 · 0 评论 -
数据库索引
索引概念索引是一种用于快速查询和检索数据的数据结构。常见的索引结构有: B树, B+树和Hash。索引的作用就相当于目录的作用。打个比方: 我们在查字典的时候,如果没有目录,那我们就只能一页一页的去找我们需要查的那个字,速度很慢。如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了。索引的优缺点索引的优点**可以大大加快 数据的检索速度(大大减少的检索的数据量), 这也是创建索引的最主要的原因。毕竟大部分系统的读请求总是大于写请求的。 ** 另外,通过创建唯一性索引,可以保证转载 2020-06-23 21:02:11 · 518 阅读 · 0 评论 -
计算机网络
一 OSI与TCP/IP各层协议?1.1 应用层应用层(application-layer)的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则。对于不同的网络应用需要不同的应用层协议。在互联网中应用层协议很多,如域名系统DNS,支持万维网应用的 HTTP协议,支持电子邮件的 SMTP协议等等。我们把应用层交互的数据单元称为报文。域名系统域名系统(Domain Name System缩写 DNS,Domain Name被译为转载 2020-06-21 16:09:50 · 438 阅读 · 1 评论 -
GC笔记
1 判断对象已经死亡堆中几乎放着所有的对象实例,对堆垃圾回收前的第一步就是要判断那些对象已经死亡(即不能再被任何途径使用的对象)。1.1 引用计数法给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加 1;当引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这个算法来管理内存,其最主要的原因是它很难解决对象之间相互循环引用的问题。 所谓对象之间的相互引用问题,如下面代码所示:除了对象 objA 和 objB转载 2020-06-18 20:55:38 · 176 阅读 · 0 评论 -
AQS笔记
1、AQS简介AQS全名:AbstractQueuedSynchronizer,是并发容器J.U.C(java.lang.concurrent)下locks包内的一个类。它实现了一个FIFO(FirstIn、FisrtOut先进先出)的队列。底层实现的数据结构是一个双向链表。Sync queue:同步队列,是一个双向链表。包括head节点和tail节点。head节点主要用作后续的调度。 Condition queue:非必须,单向链表。当程序中存在cindition的时候才会存在此列表。AQS核心思转载 2020-06-16 20:16:34 · 170 阅读 · 0 评论 -
基本数据类型和引用类型
Java提供了两类数据类型:一种是基本数据(原始类型),一种是引用类型。数据类型图:基本数据类型:注意:1.在基本数据类型中,除了boolean类型所占长度与平台有关外,其他数据类型长度都是与平台无关的。比如:int永远占4个字节(1 Byte=8 bit)2.基本数据类型的默认值仅在作为类中属性时生效在方法内部必须先对基本数据类型变量赋值后才能使用,否则编译不通过。ep:引用数据类型:引用类型指向一个对象,不是原始值,指向对象的变量是引用变量在java里面除去基本数据类型的其他类转载 2020-06-04 17:10:53 · 276 阅读 · 0 评论