java常用方法
文章平均质量分 89
老城Code
这个作者很懒,什么都没留下…
展开
-
JUC下的ThreadLocalRandom详解
ThreadLocalRandom 是Java并发包(java.util.concurrent)中提供的一个随机数生成器类,它是从Java 7开始引入的。相较于传统的Math.random()或Random类,ThreadLocalRandom更适用于多线程环境,因为它为每个线程维护了一个独立的随机数生成器实例,减少了线程之间的竞争,提高了性能。原创 2024-05-13 22:13:44 · 1309 阅读 · 0 评论 -
JUC下的Future 详解
java.util.concurrent.Future 是Java并发编程中一个重要的接口,它代表一个异步计算的结果。当你提交一个任务到执行器(如ExecutorService的submit方法),它会返回一个Future对象。这个对象允许你查询任务是否完成、取消任务、获取任务结果(如果已完成)或者等待结果的完成。Future的出现极大地增强了Java在处理并发异步操作时的灵活性和可控性。原创 2024-05-13 21:43:17 · 1145 阅读 · 0 评论 -
Java 守护线程 ( Daemon Thread )详解
在Java多线程编程中,守护线程(Daemon Thread)是一种特殊类型的线程,其存在的目的是为了服务于用户线程(User Thread),提供辅助功能,如垃圾回收、监控或日志记录等。Java虚拟机(JVM)的正常运行并不依赖于守护线程的活动,当所有非守护线程(即用户线程)结束执行后,无论守护线程是否还在运行,JVM都会自动退出。这一特性使得守护线程非常适合执行那些不需要伴随程序整个生命周期的任务。原创 2024-05-12 22:42:43 · 1308 阅读 · 0 评论 -
JUC下的Java java.util.concurrent.Locks详解
java.util.concurrent.locks 包是Java并发编程中非常重要的一个部分,它提供了比内置synchronized关键字更为灵活的锁机制,用于多线程环境下的同步控制。这个包中最核心的是Lock接口,以及一系列实现类,如ReentrantLock, ReentrantReadWriteLock, StampedLock, 和Condition接口等。原创 2024-05-12 22:14:02 · 1057 阅读 · 0 评论 -
JUC下的BlockingQueue详解
BlockingQueue是Java并发包(java.util.concurrent)中提供的一个接口,它扩展了Queue接口,增加了阻塞功能。这意味着当队列满时尝试入队操作,或者队列空时尝试出队操作,线程会进入等待状态,直到队列状态允许操作继续。这种设计模式有效地解决了生产者-消费者问题,确保了线程间的协作和同步,避免了忙等待,提高了系统的效率和响应性。原创 2024-05-11 22:23:43 · 1074 阅读 · 0 评论 -
Tomcat 内核详解 - Web服务器机制
Apache Tomcat,作为一款流行的开源Web服务器和Servlet容器,是许多Java Web应用程序的首选部署平台。它遵循Java Servlet、JavaServer Pages (JSP)、Expression Language和WebSocket规范,提供了一个强大而灵活的环境来运行Java Web应用。原创 2024-05-11 21:47:04 · 882 阅读 · 0 评论 -
JUC下CountDownLatch详解
CountDownLatch是Java并发包java.util.concurrent中提供的一个同步工具类,它允许一个或多个线程等待其他线程完成操作后再继续执行。这个工具类基于一个计数器,计数器的初始值可以由构造函数设定。线程调用countDown()方法会将计数器减1,而其他线程调用await()方法会阻塞,直到计数器为0。这在多线程协作中非常有用,特别是在需要等待某些条件达成(比如所有子任务完成)之后,再继续执行后续操作的场景。原创 2024-05-10 21:26:58 · 804 阅读 · 0 评论 -
JUC下的CompletableFuture详解
CompletableFuture是Java 8引入的一个实现Future接口的类,它代表一个异步计算的结果。与传统的Future相比,CompletableFuture提供了更丰富的功能,比如链式调用、组合异步操作、转换结果、异常处理等,极大地增强了Java在处理异步编程的能力。原创 2024-05-10 21:08:51 · 985 阅读 · 0 评论 -
详解Java Google Guava
Guava是Java开发中非常有价值的工具库,它通过提供高级数据结构、并发工具、实用工具类等,极大地提高了开发效率和代码质量。然而,开发者在享受其便利的同时,也应注意其学习成本、版本兼容性和性能优化等问题,通过合理的使用策略和持续的学习,最大化Guava的效用。原创 2024-05-09 23:29:43 · 1838 阅读 · 0 评论 -
JUC下的ForkJoinPool详解
ForkJoinPool 是 Java 并发包 (java.util.concurrent) 中的一个特殊线程池,专为分治算法设计,能够高效地处理大量可分解的并行任务。它基于工作窃取(work-stealing)算法,当一个工作线程的任务队列为空时,它会尝试从其他工作线程的任务队列中“窃取”任务来执行,从而提高了线程的利用率和系统的整体性能。原创 2024-05-09 22:55:04 · 1289 阅读 · 0 评论 -
JUC下的ScheduledThreadPoolExecutor详解
ScheduledThreadPoolExecutor是Java并发包java.util.concurrent中的一个类,它是专门为定时和周期性任务执行而设计的线程池。它继承自ThreadPoolExecutor,因此具备了线程池的所有特性,同时增加了任务调度的功能。它使用一个无界优先队列来存储待执行的任务,这些任务根据它们的延时或周期进行排序。原创 2024-05-08 23:07:48 · 950 阅读 · 0 评论 -
Java 线程池之 ThreadPoolExecutor
Java线程池,特别是ThreadPoolExecutor,是构建高性能、可扩展应用程序的基石之一。它不仅关乎效率,还直接关系到资源管理与系统稳定性。想象一下,如果每来一个请求就创建一个新的线程,服务器怕是很快就要举白旗了。而ThreadPoolExecutor就是那个懂得“量入为出”,合理调配资源的智慧管家。原创 2024-05-08 22:47:21 · 1122 阅读 · 0 评论 -
Java 线程池 ( Thread Pool )的简单介绍
Java线程池是Java并发编程中的重要组成部分,它通过预先创建一定数量的线程并将其维护在一个池中,以备后续任务使用,从而减少了线程创建和销毁的开销,提高了系统资源的使用效率。Java中线程池的核心实现是java.util.concurrent.ThreadPoolExecutor类,它是基于生产者-消费者模型设计的,由线程集合、任务队列和拒绝策略处理器组成。此外,java.util.concurrent.Executors类提供了创建不同类型线程池的便捷方法。原创 2024-05-07 22:41:49 · 762 阅读 · 0 评论 -
Java的Fork-Join简单介绍
Java的Fork-Join框架是Java 7引入的一个用于并行处理的轻量级框架,它基于分治策略(Divide and Conquer),特别适合于那些可以被分解为多个子任务的任务。Fork-Join框架的核心思想是将一个大任务(Task)拆分成足够小的子任务,这些子任务可以并行处理,最后将子任务的结果合并以获得最终结果。这种模式非常适合于数据并行处理和递归算法的实现。原创 2024-05-07 22:10:25 · 724 阅读 · 0 评论 -
Java的java.util.concurrent.ExecutorService简介
Java的ExecutorService是Java并发编程中非常重要的一部分,它是java.util.concurrent包提供的高级线程管理工具,允许以更加灵活和高效的方式执行异步任务。ExecutorService本质上是一个线程池,它不仅提供了线程的管理和复用机制,还支持任务调度、线程同步、异常处理等功能,从而简化了并发编程的复杂度并提高了程序性能。原创 2024-05-06 22:24:54 · 931 阅读 · 0 评论 -
常用的启发式算法
启发式算法是一类基于直观或经验规则设计的策略,用于求解复杂问题,特别是那些传统方法(如精确算法)在计算时间和空间上难以处理的问题。它们通常不保证找到全局最优解,但能在合理的计算资源内提供近似最优解。这里给出几种常用的启发式算法的简单介绍和实现原创 2024-04-18 23:48:44 · 1411 阅读 · 0 评论 -
数据库查询:查询入参类型和数据库字段类型不匹配导致的问题
数据库查询:查询入参类型和数据库字段类型不匹配导致的问题原创 2024-04-15 21:12:25 · 912 阅读 · 0 评论 -
程序员常用的几种算法
Java程序员常用的几种算法原创 2024-04-05 00:02:03 · 199 阅读 · 1 评论 -
ThreadLocal详解及用法示例
ThreadLocal详解及用法示例原创 2024-03-20 22:56:36 · 3366 阅读 · 0 评论 -
Java常用修饰符及示例
Java常用修饰符及示例(访问修饰符及非访问修饰符)原创 2024-03-16 19:25:06 · 954 阅读 · 0 评论 -
Java的数据类型
Java的数据类型原创 2024-03-16 19:08:35 · 363 阅读 · 0 评论 -
Map中key为String时,按照key排序且不按照字典顺序的方法实现
Map中key为“1223-4322”时,按照key排序且不按照字典顺序的方法实现原创 2024-03-13 23:06:55 · 718 阅读 · 0 评论 -
Java中的Map集合如何根据key值排序?
Java中的Map集合如何根据key值排序(HashMap)?原创 2024-03-13 22:01:43 · 6406 阅读 · 1 评论 -
Spring Boot的单元测试及示例代码
Spring Boot的单元测试和MVC 控制器测试及示例代码原创 2024-03-08 23:54:32 · 1598 阅读 · 0 评论 -
Java中常用的集合及方法(4)- Set
Collection集合下的Set,Set集合常用的使用场景、方法及使用时需要注意的问题原创 2024-03-07 23:25:23 · 1048 阅读 · 1 评论 -
Java中常用的集合及方法(3)
List-LinkedList中常用方法及示例原创 2024-03-06 23:54:35 · 521 阅读 · 1 评论 -
Java中常用的集合及方法(2)
List-ArrayList中常用方法及示例原创 2024-03-06 23:28:26 · 1158 阅读 · 1 评论 -
Java中常用的集合及方法(1)
Java中常用的集合及方法(1)--List原创 2024-03-05 22:41:45 · 1242 阅读 · 1 评论 -
java.time.LocalDateTime比较大小方法
【代码】java.time.LocalDateTime比较大小方法。原创 2023-03-08 22:56:59 · 4669 阅读 · 0 评论