Java集合篇 Java集合篇概念JAVA中的集合ListList是有序的collection,主体为数组 ArrayList,扩容原理是,将原来的数组复制到新的数组。查询快,插入删除慢。 LinkedList 是双向链表,查询慢,插入删除快。 Setset不允许重复的元素,set中是无序的。 HashSet 是通过HashMap实现的,(所有Key都是用相同的Value,一个名为PRESENT的Objec 2025-08-19 #集合篇
算法篇 算法数组 二分法 双指针法(快慢指针) 滑动窗口 模拟行为(做旋转矩形) 前缀和 链表链表数据结构代码1234567public class ListNode{ int val; ListNode next; ListNode(){} ListNode(int val){ this.val = val;} ListN 2025-08-18 #算法
Reids篇 Redis数据结构Redis的底层数据结构常见数据结构:String,Hash,List,Set,Zset(有序集合) 新增数据结构: BitMap(2.2 版新增):二值状态统计的场景,比如签到、判断用户登陆状态、连续签到用户总数等; HyperLogLog(2.8 版新增):海量数据基数统计的场景,比如百万级网页 UV 计数等; GEO(3.2 版新增):存储地理位置信息的场景,比如滴滴叫车 2025-08-14 #Rei
JavaSE篇 JavaSE概念编译型语言和解释型语言的区别? 编译型语言是先编译成字节码,再直接执行,如:C、C++ 接事情语音是由解释器逐行解释执行源代码,如:python Java是什么语言?Java首先经过编译后生成字节码文件,再进入JVM中,就有两个步骤编译和解释。 对象转换的问题向上转换是自动进行的,安全: 12345class Animal {}class Dog extend 2025-08-13 #JavaSE
JVM篇 JVM内存模型JVM中堆和栈有什么区别?1.用途:栈存方法;堆存实体对象。 2.生命周期:栈中方法的局部变量会随方法调用结束消失;堆中对象声明周期不确定,在垃圾回收机制确认没用了才回收。 3.存取速度:栈快;堆慢。 4.存储空间:栈小,操作系统管理;堆大,JVM管理。 5.可见性:栈私有,每个线程都有栈;堆共享,任何线程都能访问。 栈中存的是指针?栈存的是对象的引用,也可以用指针说明,在调用方法时 2025-08-10 #JVM
项目拷打篇 一.问题概览1.1你的项目是如何实现短信登录和验证的我们项目使用短信验证码登录,用户输入手机号后,我们生成验证码存入 Redis,并设置过期时间。用户登录时校验验证码,通过后注册或登录,生成一个 Token,作为用户身份标识。 我们将用户信息以 Token 为 Key 存入 Redis Hash,并设置有效期,前端拿到 Token 后每次请求时放入请求头,后端通过 Token 在 Redis 中获 2025-08-07 #黑马点评
Javaweb篇 JavaWebSpringBoot IOC(Inversion Of Control),控制反转。 DI(Dependecy Injection),依赖注入。@Autowired Bean对象,为容器IOC创建的对象。 Bean的声明:@Component,@Controller——Controller层,@Service——services层,@Repository——DAO层 2025-08-04 #JavaWeb