Java教程与面试题
-
Java中获取字符串中前n个字符的5种方法
147 5K在这个简短的教程中,我们将探索在 Java 中获取字符串的前 n 个字符的不同方法。首先,我们将学习如何使用核心 JDK 方法和类来执行此操作。然后,我们将了解如何使用Apache Commons L.
-
Java中实现TreeMap缓存驱逐策略
58 5K为了提高应用程序速度,缓存是将经常访问的数据存储在内存中的一种方法。当缓存填满时,缓存逐出策略会决定必须删除哪些内容。Java 的 TreeMap 提供了排序映射实现,它可用于创建具有独特驱逐策略的缓.
-
Java中查找字符串中最大数字的3种方法
179 3K通常,在处理多个编程场景时,会出现包含数字的字符串,并且可能需要找到这些值中最大的值。1、字符串解析与比较最简单的方法包括读取字符串并识别数字子字符串。我们可以通过比较前缀来检测最大的数字。让我们举个.
-
Java中检查字符串是否互相旋转或镜像反射
65 10K当我们使用 Java 工作时,字符串操作和比较是日常任务。字符串是原始字符的序列,在 Java 中,它包装在String类中。尽管两个字符串可能是不同的对象,但我们可以比较它们的内部字符并检查例如它们.
-
Java中从流中获取一系列数据项
55 2KStream API在 Java 8 中引入,彻底改变了开发人员使用对象集合的方式。流提供了强大的操作来简洁、声明性地处理和操作数据。使用流时的一个常见任务是根据某些标准或索引从流中提取一系列项目。在.
-
Java中CompletableFuture中4种异步编程方法
69 8KJava的CompletableFuture框架提供了强大的异步编程能力,方便任务的并发执行。1、runAsync() 与 SupplyAsync()之间的区别CompletableFuture是 J.
-
Java中检查字符串是否Base64编码的2种方法
300 2K在Java编程中,我们经常涉及数据编码和解码。此外,Base64 编码很流行,用于将二进制数据转换为ASCII文本格式。Base64编码是什么Base64 是一种二进制到文本的编码方案,可将二进制数据.
-
Java中切杆问题的3种解决方案
62 7K切杆问题(棒切割:Rod Cutting Problem)是一个经典的优化问题,涉及找到将棒切割成碎片的最佳方法,以最大化总收入。什么是切杆问题假设我们有一根长度为 n 的杆,我们可以灵活地将这根杆切.
-
什么是GraalVM、AOT 和 JIT?
104 5K用本指南来了解 GraalVM 是什么、它的工作原理以及即时 (JIT) 编译与提前 (AOT) 编译的比较。如果 Graal 的本机可执行文件几乎立即启动、更小并且消耗更少的资源 , 为什么您会想在.
-
Java中创建正则表达式匹配流
84 2K正则表达式(通常称为 regex)是一种强大的模式匹配机制。它们使我们能够识别字符串中的特定模式,极大地帮助完成数据提取、验证和转换等任务。让我们深入了解如何在 Java 中创建正则表达式匹配流。什么.
-
Java中屏蔽电子邮件地址和电话号码
72 2K隐私和数据安全是软件开发的重要元素。屏蔽敏感详细信息(例如用户的电子邮件地址和电话号码)通常是用于保护用户信息并防止其泄露的一种程序。在本教程中,我们将研究如何在 Java 中屏蔽电子邮件地址和电话号.
-
Java中将零移至数组末尾
77 1 3K当我们在 Java 中使用数组时,一项常见任务是重新排列数组以优化其结构。一种这样的场景涉及将零移动到数组的末尾。在本教程中,我们将探索使用 Java 实现此任务的不同方法。在我们深入实现之前,我们首.
-
Java中查找列表中第一个非重复元素的4种方法
84 6K在本教程中,我们将探讨查找列表中第一个非重复元素的问题。我们将首先了解问题陈述,然后实施一些方法来实现预期结果。给定一个元素列表,任务是找到列表中第一个不重复的元素。换句话说,我们需要识别列表中仅出现.
-
Java中可变对象与不可变对象
77 5K在 Java 中使用对象时,了解可变对象和不可变对象之间的区别至关重要。这些概念影响 Java 代码的行为和设计。在本教程中,我们将探讨可变对象和不可变对象的定义、示例、优点和注意事项。什么是不可变对.
-
Java中使用 JDBC 分页
86 10K大量的表读取可能会导致我们的应用程序内存不足。它们还会给数据库增加额外的负载,并且需要更多的带宽来执行。读取大型表时推荐的方法是使用分页查询。本质上,我们读取数据的子集(页面),处理数据,然后移动到下.
-
Java中原子操作的比较和交换 (CAS)
119 7K在本文中,我们将深入研究 Java CAS 的机制,揭开它的神秘面纱并了解它如何在实现非阻塞方法方面发挥关键作用。什么是比较和交换 (CAS) 想象一下,你和朋友各有一篮子苹果,你们都想交换一些苹果。.
-
Java中将UUID存储为Base64字符串3种方法
137 9K使用 Base64 编码字符串是一种广泛采用的存储通用唯一标识符 (UUID) 的方法。与标准 UUID 字符串表示形式相比,这提供了更紧凑的结果。在本文中,我们将探讨将 UUID 编码为 Base6.
-
Java中用流stream计算加权平均值
104 9K在本文中,我们将探讨解决同一问题的几种不同方法 - 计算一组值的加权平均值。什么是加权平均值?我们通过将所有数字相加然后除以数字的数量来计算一组数字的标准平均值。例如,数字 1、3、5、7、9 的平均.
-
Java中CountDownLatch与Semaphore比较
92 1 6K在 Java 多线程中,线程之间的有效协调对于确保正确同步和防止数据损坏至关重要。两种常用的线程协调机制是CountDownLatch和Semaphore。在本教程中,我们将探讨CountDownLa.
-
Java中游程编码和解码
77 8K在计算机科学中,数据压缩技术在优化存储和传输效率方面发挥着重要作用。一种经受住时间考验的技术是游程编码(RLE)。在本教程中,我们将了解 RLE 并探索如何在 Java 中实现编码和解码。什么是游程编.
-
Java中捕获OutOfMemoryError
114 2K在本教程中,我们将学习如何在发生OutOfMemoryError时显式停止应用程序。在某些情况下,如果没有正确的处理,我们可能会在不正确的状态下继续处理应用程序。什么是OutOfMemoryError.
-
Java中规范化URL三种方式
142 4K统一资源定位器 (URL)是 Web 开发的重要组成部分,因为它们有助于定位和获取Internet上的资源。然而,URL 可能不一致或格式不正确;这可能会导致加工和获取所需材料出现问题。URL规范化将.
-
Java中使用SecureRandom生成唯一的正长整型
138SecureRandom类位于java.security包中,专为加密目的和关键安全情况而设计,使用确保高度不可预测性的算法。在本教程中,我们将讨论使用SecureRandom生成唯一的正长整型值,并.
-
Java9私有接口方法详解
72 6KJava 9 中私有接口方法的出现标志着 Java 编程发展的关键时刻,它引入了一个显着拓宽接口设计和实现视野的功能。在此增强之前,Java 中的接口在功能上受到一定限制,主要用作实现类的契约,无法完.
-
模式搜索:数据结构和算法教程
169 41K模式搜索算法有时也称为字符串搜索算法,并被视为字符串算法的一部分。这些算法在搜索另一个字符串中的字符串的情况下非常有用。模式搜索算法的特点: 模式搜索算法应该快速准确地识别熟悉的模式。 识别并分类不.
-
Java中从文件路径字符串中提取文件扩展名3种方法
151 8K在 Java 中,使用文件很常见,了解如何从文件路径中提取文件扩展名对于根据文件类型做出明智的决策至关重要。在本文中,我们将探索有效完成此任务的技术,使开发人员能够改进其与文件相关的操作。1、Java.
-
Java中不可变数组实现两种方法
110 4K在Java中,数组是一种可变的数据结构,一旦创建其大小就固定了。在这篇文章中,我们将讨论如何在 Java 中实现不可变数组。不可变意味着我们无法修改它。如果在Java中有一个不可变数组,则指的是初始化.
-
使用正则表达式查找单词出现的 Java 程序
58 2KJava 的正则表达式(或称正则表达式)可让您进行高级文本操作和匹配。正则表达式提供了一种方便的方法来搜索文本中出现的术语。在本文中,我们将学习使用正则表达式查找单词的每次出现。使用正则表达式查找单词.
-
Java中0-1背包问题的空间优化DP解决方案
80 5K在本文中,我们将学习 Java 中 0-1 Knapsack 问题的空间优化 DP 解决方案。什么是背包问题背包问题是组合优化问题的一个例子。这个问题也俗称“背包问题”。问题的名称是根据最大化问题定义.
-
Java中使用正则表达式分割字符串
70在参数中传递正则表达式(Regex)时拆分字符串,单个字符串将基于(Regex)进行拆分,因此,我们可以将字符串存储在字符串数组中。在本文中,我们将学习如何根据给定的正则表达式分割字符串。首先,我们对.