自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Java8 新特性之 Lambda 表达式和 Stream API

Stream API 的操作中,中间操作可以有多个,但是终止操作只能有一个中间操作并不会立即执行,而是返回一个新的 Stream 流,只有在触发终止操作的时候,才会触发计算,返回流的计算结果。

2024-11-08 20:44:44 1042

原创 java基础-八大基本数据类型

本篇文章偏向于 Java 基础,阅读时间大约为:4 分钟。目录1、前言2、Java 的八大基本数据类型2.1、整数类型(byte、short、int、long)2.2、浮点数类型(float、double)2.3、字符(char)2.4、布尔类型(boolean)3、变量的初始化和默认值4、基本数据类型的转换4.0、字面量和变量简述4.1、隐式类型转换4.2、显式类型转换。

2024-11-03 15:00:35 3202

原创 Java 多线程中的通信机制

隐式锁:避免了手动加锁和释放锁。可重入锁:避免了死锁。简单易用:实现起来较为简单方便。不够灵活:加锁粒度过大。效率过低:相较于显示锁,synchronized 效率过低。不可中断:其他处于 BLOCKED 状态中的线程必须要等待锁的释放才可以被中断。

2024-10-31 20:28:22 1226 1

原创 【java】如何优雅的停止线程?

尝试去关闭线程volatile 关键字:中断标记:线程池相关方法,会去尝试关闭线程池中正在运行的线程。上面这些方法都是优雅的关闭线程的方法,他们都是尝试去关闭线程而不是强制关闭线程。

2024-10-30 20:52:49 1435 2

原创 【Java 】集合篇-ArrayList-7000 字内容带你从入门到掌握(含源码)

AraryList 是 Java 集合框架中的一个动态数组实现类,位于 java.util 包下。它提供了一个可变变小的数组。可以动态的增加或者删除元素。动态数组支持随机访问线程不安全扩容机制总的来说,arrayList 适合需要频繁随机访问以及遍历元素的场景。我们简单记忆:ArrayList 实现了 List 接口(List 接口实现了 Collection 接口)。ArrayList 是线程不安全的ArrayList 是可以存放 null 元素的。

2024-10-28 21:40:33 922

原创 【Java】一篇文章学会 ThreadLocal

本篇文章会从源码的角度分析 ThreadLocal。文章内容不长,阅读时间大致为:4 分钟。是 Java 中提供的一种用于在多线程环境中存储线程私有变量的工具。它允许每个线程都能有自己的、独立于其他线程的变量副本,确保线程之间的数据隔离,避免数据竞争和状态共享问题。看下面图来加深理解(※※※)一个线程对应一个 ThreadLocalMap,ThreadLocalMap 中存放一个 Entry[] 数组,Entry 的结构是:以 ThreadLocal 对象为 key, Object 为 value。

2024-10-28 15:10:56 1969

原创 一篇文章掌握Java线程的生命周期(含快速掌握技巧)

新建(NEW)就绪(RUNNABLE)阻塞(BLOCKED)等待(WAITING)超时等待(TIMED_WAITING)终止(TERMINATED)记忆技巧(※※)。表示线程从新建到终止的流程。接着记忆WAITING和,这两者都表示线程处于 “等待状态”,只是 TIMED_WAITING 只会等待一段时间,而 WAITING 会无限等待,直到被唤醒。最后就是BLOCKED状态,这个状态可以理解为线程正在尝试获取锁,没有获取到就会处于 BLOCKED 状态。

2024-10-27 20:54:05 1386

原创 【java】什么是 Future 和 CompletableFuture - 一篇文章快速入门 Java 异步编程

Future 是 Java 并发库中的接口,表示一个异步计算的结果。使用 Future 可以在提交任务时立即返回一个对象,通过该对象可以检查任务的执行状态和结果。

2024-10-27 16:09:42 2643

原创 行为型设计模式-策略模式-一篇文章学会策略模式

策略模式(Strategy Pattern)是一种行为设计模式,它定义了一系列算法,将每一个算法封装到独立的类中,使得它们可以相互替换。策略模式允许客户端在运行时选择所需的算法,而不需要修改客户端代码。

2024-10-26 20:11:20 1043

原创 排序-快速排序-java(双指针法)

快速排序(QuickSort)是一种基于分治法的高效排序算法。它通过选择一个,将数组划分成两个子数组,使得左侧子数组的所有元素小于基准元素,右侧子数组的所有元素大于基准元素。然后递归地对这两个子数组进行排序,最终使整个数组有序。下面先给出示例代码。

2024-10-26 19:09:39 382

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除