念两句诗

SpringBoot的启动原理、流程和机制

springboot 启动原理、启动过程、启动机制的介绍 1.启动原理 Spring Boot的一个核心特点是自动配置,它会自动配置Spring应用程序基于项目中添加的jar依赖。如果项目中包括 spring-boot-starter-we...

线段树和树状数组

线段树和树状数组 1.线段树 线段树适用于区间操作较为复杂或者需要处理多个不同类型的区间操作的场景。具体如下: 区间求和、区间最值查询 区间更新 复杂的动态区间操作(区间最大公约数、最小公倍数) 支持懒标记的区间更新(更新无需遍历整个区...

手写HashMap

手写HashMap 1.定义HashMap的存储单元Node class Node<K,V>{ final K key; V value; Node<K, V> next; Node(...

线程池相关

交替打印数字 利用volatile同步 public class VolatilePrint { // 全局变量i,用于计数 private static int i = 1; // 是否是奇数的标志,用volati...

八大排序算法

插入排序 直接插入排序 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。 时间复杂度:O(N^2) 空间复杂度:O(1) 稳定 public static void in...

单例模式

饿汉式单例 饿汉式单例在类加载时就创建实例,因此是线程安全的。 public class EagerSingleton{ private static final EagerSingleton INSTANCE = new Eage...

37. Java序列化

Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。 将序列化对象写入文件之后,可以从文件中读取出来,并且对他进行反序列化,也就是说,对...

36. Java泛型

Java泛型是jdk5引入的一个新特性,泛型提供了编译时类型安全检测机制,允许程序员在编译时检测到非法的类型,泛型的本质是参数化类型,也就是说操作的数据类型被指定为一个参数。 假定我们有这样一个需求:写一个排序方法,能够对整型数组、字符串数...

35. Java Object类

java的Obejct类是所有类的父类,也就是说java的所有类都继承了Object类,子类可以使用Object的方法。 Object位于java.lang包中,编译时会自动导入,创建一个类,如果没有明确继承一个父类,那么它会自动继承Ob...

34. Java Iterator(迭代器)

Java迭代器是java集合框架中的一种机制,提供了一种在不暴露集合内部实现的情况下遍历集合元素的方法. Java迭代器不是一个集合,是用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。 Iterator是ja...