java基础
文章平均质量分 93
方渐鸿
这个作者很懒,什么都没留下…
展开
-
【2024】通过EasyExcel实现不定长Excel表头导出、以及多sheet页和单元格合并效果
EasyExcel是阿里巴巴开源的一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。原创 2024-06-05 19:11:58 · 1393 阅读 · 0 评论 -
【2024】ArrayList和LinkedList详解介绍对比
ArrayList是实现了List接口的动态数组,所谓动态数组就是他的大小是可变的。实现了所有可选列表操作,并允许包括Null在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。默认初始容量是10。默认初始容量为10。随着ArrayList中元素的增加,它的容量也会不断的自动增长。原创 2024-01-09 09:22:12 · 1276 阅读 · 1 评论 -
【2023】Spring Validation中@NotNull注解、@NotBlank注解介绍以及使用
注解:JSR 303 定义了一组用于验证的注解,如 @NotNull、@Size、@Pattern、@Min、@Max 等。通过在 Java 对象的属性上添加这些注解,可以指定验证的条件和约束。早期的 Spring Web 基于 Hibernate Validator 实现了这些校验规范。在后期,Spring 将这部分校验独立成为了一个模块spring-validation,需要额外引入依赖实现相关注解校验。原创 2023-08-25 17:34:08 · 2644 阅读 · 0 评论 -
【2023】HashMap详细源码分析解读
HashMap是Map中的重要实现类,它是一个散列表,存储的内容是键值对(key=>value)映射。HashMap是非线程安全的。HashMap中允许存储null的键和值,键是唯一的。在JDK1.8以前,HashMap的底层数据结构是纯粹的数组+链表结构。由于数组具有读取快,增删慢的特点,而链表具有读取慢,增删快的特点,HashMap将二者相结合,并且没有使用同步锁进行修饰,它的性能较好。数组是HashMap的主体,链表则是为了解决哈希冲突而引入。拉链法。原创 2023-07-25 17:40:54 · 264 阅读 · 1 评论 -
java8新特性——Stream流
Stream流的常用方法汇总:终结方法:返回值类型不再是Stream接口本身类型的方法,例如:forEach方法和count方法非终结方法/延迟方法:返回值类型仍然是Stream接口自身类型的方法,除了终结方法都是延迟方法。例如:filter,limit,skip,map,conat原创 2023-06-30 09:02:47 · 200 阅读 · 0 评论 -
【2023】项目开发过程中接口幂等性解决方案实现,及代码示例
使用redis的原生操作SETNX命令来实现,这个方法会发送一条命令到Redis服务器, 如果键不存在,则设置键值对,并设置过期时间,返回true;如果键已经存在,则不做任何操作,并返回false。 使用Redis原生操作实现虽然简单,但在高并发情况下可能存在竞争条件的问题,因为尽管setIfAbsent方法本身是原子的,但在设置过期时间时不是同一个操作, 可能存在一定的延迟,具体根据自己情况来,如果对原子性原创 2023-07-17 17:15:55 · 604 阅读 · 0 评论 -
【2023】java实现常见排序算法
使用二分查找时,奇数二分取中间值,偶数二分取中间靠左值。原创 2023-07-08 11:47:41 · 64 阅读 · 0 评论 -
java8新特性——Optional类
容器类Optional类(java.util.Optional)是一个容器类,代表一个值存在或不存在,原来用null表示一个值不存在,现在Optional可以更好的表达这个概念。并且可以避免空指针异常;原创 2023-06-30 09:13:11 · 322 阅读 · 0 评论 -
【2023】ArrayList和LinkedList详解介绍对比
可以被当作堆栈(后进先出)、队列(先进先出)或双端队列进行操作。数据添加删除效率高,只需要改变指针指向即可,但是访问数据的平均效率低,需要对链表进行遍历。非同步,线程不安全。支持null元素、有顺序、元素可以重复不要使用普通for循环去遍历LinkedList,使用迭代器或者foreach循环(foreach循环的原理就是迭代器)去遍历LinkedList即可:这种方式是直接按照地址去找数据的,将会大大提升遍历LinkedList的效率。原创 2023-07-21 17:37:43 · 241 阅读 · 0 评论