简介
在这个实验中,你将学习如何在 Java 中检查一个数字是否为正数。我们将从编写一个简单的程序开始,使用基本的条件语句将一个数字与零进行比较。
然后,你将扩展这方面的知识,对整数和双精度浮点数这两种数据类型进行测试,了解如何处理不同的数值表示方式。最后,我们将探讨如何处理边界情况,特别关注如何正确识别和处理数字为零的情况。
在这个实验中,你将学习如何在 Java 中检查一个数字是否为正数。我们将从编写一个简单的程序开始,使用基本的条件语句将一个数字与零进行比较。
然后,你将扩展这方面的知识,对整数和双精度浮点数这两种数据类型进行测试,了解如何处理不同的数值表示方式。最后,我们将探讨如何处理边界情况,特别关注如何正确识别和处理数字为零的情况。
在这一步中,我们将编写一个简单的 Java 程序,用于将一个数字与零进行比较。这将向你介绍 Java 中的基本条件语句,特别是 if
语句。条件语句能让你的程序根据特定条件做出决策。
首先,确保你处于正确的目录中。打开 WebIDE 底部的终端,输入以下命令,然后按回车键:
cd ~/project
这能确保你位于 ~/project
目录下,我们将在此目录中创建 Java 文件。
现在,让我们创建一个名为 CompareNumber.java
的新 Java 文件。你可以通过在左侧的文件资源管理器中右键单击,选择“新建文件”,然后输入 CompareNumber.java
来完成。或者,你也可以使用终端:
touch CompareNumber.java
在文件资源管理器中点击 CompareNumber.java
文件,将其在代码编辑器中打开。
将以下 Java 代码复制并粘贴到编辑器中:
public class CompareNumber {
public static void main(String[] args) {
int number = 10; // We will compare this number with zero
if (number > 0) {
System.out.println("The number is positive.");
}
}
}
让我们来看看这段代码的新部分:
int number = 10;
:这行代码声明了一个名为 number
的 int
(整数)类型变量,并将其赋值为 10。变量用于在程序中存储数据。if (number > 0)
:这是一个 if
语句。它会检查括号内的条件 (number > 0
) 是否为真。如果条件为真,则会执行紧随其后的花括号 {}
内的代码。System.out.println("The number is positive.");
:只有当 number
大于 0 时,这行代码才会执行。保存文件(Ctrl+S 或 Cmd+S)。
现在,在终端中使用 javac
命令编译 Java 程序:
javac CompareNumber.java
如果没有错误,~/project
目录下将创建一个 CompareNumber.class
文件。
最后,使用 java
命令运行编译后的程序:
java CompareNumber
由于 number
变量被设置为 10(大于 0),你应该会看到以下输出:
The number is positive.
你已经成功编写并运行了一个使用 if
语句将数字与零进行比较的 Java 程序。在下一步中,我们将扩展这个程序以处理不同的情况。
在上一步中,我们将一个整数与零进行了比较。Java 支持不同类型的数字,包括整数(没有小数部分的数)和浮点数(有小数部分的数)。在这一步中,我们将修改程序,对整数和双精度浮点数这两种数据类型进行测试,并引入 else
语句来处理数字不为正数的情况。
如果 CompareNumber.java
文件尚未在 WebIDE 编辑器中打开,请将其打开。
修改代码,添加一个 else
代码块。将现有代码替换为以下内容:
public class CompareNumber {
public static void main(String[] args) {
int number = -5; // Let's test with a negative integer
if (number > 0) {
System.out.println("The number is positive.");
} else {
System.out.println("The number is not positive.");
}
}
}
以下是新增的部分:
int number = -5;
:我们将 number
的值改为 -5,以测试 else
条件。else { ... }
:如果前面 if
语句中的条件为假,则执行 else
代码块。在这种情况下,如果 number > 0
为假,则会运行 else
代码块中的代码。保存文件(Ctrl+S 或 Cmd+S)。
在终端中编译修改后的程序:
javac CompareNumber.java
运行编译后的程序:
java CompareNumber
由于 number
为 -5,if
条件 (-5 > 0
) 为假,因此会执行 else
代码块。你应该会看到以下输出:
The number is not positive.
现在,让我们用 double
(浮点数)类型进行测试。再次修改代码:
public class CompareNumber {
public static void main(String[] args) {
double decimalNumber = 3.14; // Test with a positive double
if (decimalNumber > 0) {
System.out.println("The number is positive.");
} else {
System.out.println("The number is not positive.");
}
}
}
我们将变量类型改为 double
,并为其赋值一个小数。
保存文件。
编译程序:
javac CompareNumber.java
运行程序:
java CompareNumber
由于 decimalNumber
为 3.14(大于 0),if
条件为真,你应该会看到以下输出:
The number is positive.
现在你已经了解了如何使用 else
语句,以及如何对整数和双精度浮点数这两种数据类型进行比较。在下一步中,我们将处理数字恰好为零的特定情况。
在前面的步骤中,我们处理了正数和非正数的情况。然而,我们还没有专门处理数字恰好为零的情况。在编程中,处理这些“边界情况”对于确保程序在所有情况下都能正确运行非常重要。在这一步中,我们将使用 else if
语句来专门检查数字是否为零。
在 WebIDE 编辑器中打开 CompareNumber.java
文件。
修改代码,添加一个 else if
代码块来检查数字是否为零。将现有代码替换为以下内容:
public class CompareNumber {
public static void main(String[] args) {
int number = 0; // Let's test with zero
if (number > 0) {
System.out.println("The number is positive.");
} else if (number == 0) {
System.out.println("The number is zero.");
} else {
System.out.println("The number is negative.");
}
}
}
让我们看看这些改动:
int number = 0;
:我们将 number
设置为 0,以测试新的条件。else if (number == 0)
:这是一个 else if
语句。只有当前面的 if
条件 (number > 0
) 为假时,才会检查这个条件。条件 number == 0
用于检查 number
的值是否恰好等于 0。注意,比较时使用双等号 (==
),因为单等号 (=
) 用于赋值。System.out.println("The number is zero.");
:如果 number
恰好为 0,则会执行这一行代码。else
代码块现在专门处理数字既不是正数也不是零的情况,这意味着它一定是负数。保存文件(Ctrl+S 或 Cmd+S)。
在终端中编译修改后的程序:
javac CompareNumber.java
运行编译后的程序:
java CompareNumber
由于 number
为 0,第一个 if
条件 (0 > 0
) 为假。else if
条件 (0 == 0
) 为真,因此会执行其代码块。你应该会看到以下输出:
The number is zero.
现在,让我们再次用负数进行测试。将 number
的值改为 -10:
public class CompareNumber {
public static void main(String[] args) {
int number = -10; // Test with a negative number
if (number > 0) {
System.out.println("The number is positive.");
} else if (number == 0) {
System.out.println("The number is zero.");
} else {
System.out.println("The number is negative.");
}
}
}
保存文件。
编译程序:
javac CompareNumber.java
运行程序:
java CompareNumber
由于 number
为 -10,if
条件 (-10 > 0
) 为假,else if
条件 (-10 == 0
) 也为假。因此,最后的 else
代码块将被执行,你应该会看到以下输出:
The number is negative.
现在,你已经成功使用 if
、else if
和 else
语句将一个数字与零进行比较,并判断它是正数、负数还是零。这是 Java 程序中进行决策的基本模式。
在本次实验中,我们首先学习了如何通过导航到正确的目录并创建一个新的 Java 文件来设置开发环境。接着,我们使用 if
语句介绍了 Java 中条件语句的基本概念。通过编写一个简单的程序,我们学习了如何声明一个整数变量、为其赋值,并在 if
条件中使用 >
运算符来检查该数字是否大于零。我们了解到,只有当条件为真时,if
语句中的代码块才会被执行,这展示了如何打印一条消息来表明该数字是正数。