CATEGORY

Java 基礎知識

  • 2026年2月7日

Java wait() 详解:工作原理、如何安全使用以及与 sleep() 的区别

1. Java wait() 是什么?(快速理解核心概念) java wait 指的是 一种用于临时暂停线程(执行流)并等待另一个线程通知的方法。 它用于多线程(并发运行多个任务)中执行 线程之间的协调控制。 关键点是 wait() 不是“只是等待时间流逝”。 直到另一个线程调用 notify() 或 notifyAll(),目标线程才会保持在等待状态(WAITING)。 1.1 wait() 的 […]

  • 2026年2月3日

Java 数据类型解析:基本类型 vs 引用类型、类型转换与包装类

1. 什么是 Java 数据类型?基础概念与全局视角 Java 数据类型是一种机制,用来决定 变量可以存储何种类型的值。 Java 强调 类型安全(一种在编译时防止无效类型操作的设计),因此每个变量都必须声明类型。 例如,查看下面的代码。 int number = 10; double price = 19.8; String name = "Java"; int → 仅整数 double → 仅 […]

  • 2026年2月2日

Java 中数字四舍五入方法:Math.round()、小数位、BigDecimal 与 RoundingMode

1. “四捨五入 (Rounding)” 在 Java 中的含义 当你在 Java 中想要进行 “四捨五入 (rounding)” 时,实际上并没有一种方法能够始终按照你期望的方式进行四捨五入。 这是因为在 Java 中,合适的四捨五入方式取决于数值类型(int / double / BigDecimal 等)以及目标(计算 vs 显示)。 在本节中,我们首先梳理核心概念,并阐明为什么在 Java […]

  • 2026年1月17日

Java API 详解:它是什么、如何工作以及如何使用(初学者指南)

1. 介绍 如果你正在学习 Java,你很快就会遇到 “Java API” 这个术语。 例如,String、ArrayList 和 LocalDate 等类在许多 Java 程序中都会用到——它们都是 Java API(Java 开箱即用的标准功能)的一部分。 然而,初学者常常会有以下疑问: “API” 实际上是什么意思? Java API 和 Web API 是同一个东西吗? 大家说 “查看 J […]

  • 2026年1月10日

Java 标准输入详解:Scanner 与 BufferedReader 以及快速输入技巧

1. 本文将学习的内容(快速结论) 在 Java 中处理 标准输入 有多种方式,但关键思想很简单: 根据你的目的选择输入方法。 你不需要从一开始就使用最快或最复杂的解决方案。本文将一步步解释 Java 标准输入,让你能够清晰地了解 何时以及为何 使用每种方法。 我们将从三个实用层面来讨论 Java 输入: 针对初学者和小程序:Scanner 针对较大输入和稳定性能:BufferedReader 针 […]

  • 2026年1月6日

Java 变量详解:类型、作用域、var、final 与常见错误

1. Java 中的“变量”是什么? 当你开始学习 Java 时,首先会遇到的一个重要概念是“变量”。 简而言之,变量是 一个容器,用于在程序内部临时存储值(数据),以便你可以根据需要多次复用这些值。 然而,在 Java 中,如果你把变量仅仅记作“盒子”,很快就会卡住。 因为 Java 变量是 与“类型”(数据的种类)一起处理的。 在本节中,我们将为初学者梳理变量的作用以及 Java 特有的思考方 […]

  • 2026年1月1日

Java double 详解:范围、精度、常见陷阱及 BigDecimal 替代方案

1. Java 的 double 类型是什么? Java 的 double 类型是 用于处理十进制值的基本数据类型。与表示整数的 int 或 long 不同,double 用来表示 带小数点的数字,例如 “1.5”、 “3.14” 或 “0.01”。在 Java 中进行数值计算时,它是最常用的类型之一。 由于初学者常常在这一步卡住,首先了解 double 具有什么特性 非常重要。 1.1 doub […]

  • 2026年1月1日

Java “Hello World” 初学者指南:运行你的第一个程序(在线 IDE、JDK、IntelliJ/Eclipse)

1. Java “Hello World” 是什么(你首先要确认的) 1.1 为什么 Hello World 是完美的“第一步” “Hello World” 通常是学习编程时出现的第一个例子,但它 不仅仅是打印文本的示例。 当你开始学习 Java 时,运行这个程序有明确的目的。 通过 Hello World,你可以确认以下三点: 你的 Java 程序是否采用了正确的形式 你的运行时环境(JDK、I […]

  • 2026年1月1日

Java 常量详解:final 与 static final 与 enum(最佳实践与反模式)

1. Java 中的常量是什么? 在 Java 中,常量指的是“在程序运行期间预计不会改变的数据”。 其主要目的是将数字、字符串和其他值视为固定值,并防止意外修改。 对于初学者,将常量视为“不可改变的变量”是可以的。 1.1 常量和变量的区别 普通的变量可以在程序执行期间随意更改多次。 另一方面,常量有一个限制:一旦决定值,就不能再更改。 由于这个限制,你会获得诸如以下的好处: 程序的行为变得更容 […]