测试 Boolean 包装类是否为 Null
在这一步中,我们将探讨如何在 Java 中处理 Boolean
包装类对象,特别关注如何检查一个 Boolean
对象是否为 null
。与只能为 true
或 false
的基本数据类型 boolean
不同,Boolean
包装类还可以持有 null
值。如果处理不当,这通常会导致 NullPointerException
。
让我们创建一个简单的 Java 程序来演示这一点。
-
在 WebIDE 左侧的文件资源管理器中打开 ~/project
目录。
-
在 ~/project
目录的空白处右键单击,然后选择“新建文件”。
-
将新文件命名为 BooleanCheck.java
并按回车键。
-
在代码编辑器中打开 BooleanCheck.java
文件。
-
将以下 Java 代码复制并粘贴到编辑器中:
public class BooleanCheck {
public static void main(String[] args) {
Boolean myBoolean = null;
// 尝试在条件语句中直接使用 null 的 Boolean
// 会导致 NullPointerException
// if (myBoolean) {
// System.out.println("This will not be printed if myBoolean is null.");
// }
// 检查 Boolean 包装类是否为 null 的正确方法
if (myBoolean == null) {
System.out.println("myBoolean is null.");
} else {
System.out.println("myBoolean is not null.");
}
// 另一种安全检查布尔值的方法
if (Boolean.TRUE.equals(myBoolean)) {
System.out.println("myBoolean is true.");
} else if (Boolean.FALSE.equals(myBoolean)) {
System.out.println("myBoolean is false.");
} else {
System.out.println("myBoolean is null (checked using equals).");
}
}
}
-
按 Ctrl + S
(在 Mac 上按 Cmd + S
)保存文件。
-
现在,让我们编译这个 Java 程序。打开 WebIDE 底部的终端。确保你位于 ~/project
目录中。如果不是,请输入 cd ~/project
并按回车键。
-
使用 javac
命令编译代码:
javac BooleanCheck.java
如果没有错误,该命令将执行完毕且无输出。这意味着 ~/project
目录中已创建了一个 BooleanCheck.class
文件。
-
使用 java
命令运行编译后的 Java 程序:
java BooleanCheck
-
你应该会在终端中看到以下输出:
myBoolean is null.
myBoolean is null (checked using equals).
这个输出证实了我们的代码使用 == null
检查和 Boolean.TRUE.equals()
/ Boolean.FALSE.equals()
模式正确地识别出 Boolean
对象为 null
。注释掉的代码展示了如果你尝试在 if
条件语句中直接使用 null
的 Boolean
会发生什么,这将导致 NullPointerException
。
理解如何安全地处理 null
的 Boolean
对象对于避免 Java 编程中的常见错误至关重要。