关于 Java 中 null 的事实17 Mar 2025 | 5 分钟阅读 每种编程语言,包括Java,都存在null。没有哪个程序员在编写与null相关的代码时没有遇到过问题。程序员主要在尝试使用null数据执行某些操作时遇到NullPointerException。NullPointerException 是一个类,属于java.lang 包。 在理解null的知识点之前,需要先了解Java变量。如果你不知道Java变量是什么,请点击以下链接。 每个开发者都应该了解以下关于Java中null的知识点。 区分大小写在Java中,我们不能将null写成NULL,也不能写成0(像C语言那样),因为null是一个字面量,而Java中的关键字是区分大小写的。 让我们用一个例子来理解null的区分大小写行为。 NullExample1.java 输出 ![]() 引用变量的值默认情况下,Java中的每个引用变量都具有null值。引用变量用于指示和存储Java中引用类型对象的/值。类、数组、枚举和接口等都是Java中的引用类型。 因此,如果未将任何对象赋给引用类型,则该引用类型将存储null值。 让我们用一个例子来理解引用变量如何处理null值。 NullExample2.java 输出 ![]() Null 类型在Java中,null既不是对象也不是类型。它是一个特殊的值,我们可以将其赋给任何引用类型变量。我们可以将null强制转换为任何我们想要的类型,例如String、int、double等。 让我们用一个例子来理解如何将null值赋给任何引用类型。 NullExample3.java 输出 ![]() 自动装箱和拆箱自动装箱和自动拆箱是我们可以在Java中执行的两个最重要的操作。当我们在执行操作时将null值赋给任何原始类型的装箱数据类型时,编译器会抛出NullPointerException。 让我们用一个例子来理解自动装箱和自动拆箱关于null的知识点。 NullExample4.java 输出 ![]() instanceof 运算符为了检查一个对象是否是指定类型的实例,我们使用instanceof运算符。当表达式的值在运行时不为null时,instanceof运算符返回true。它在类型转换检查中起着重要作用。 让我们用一个例子来理解instanceof运算符。 NullExample5.java 输出 ![]() 静态与非静态方法我们不能在值为null的引用变量上调用非静态方法。如果调用,它将抛出NullPointerException,但我们可以使用值为null的引用变量来调用静态方法。因为静态方法是通过静态绑定绑定的,所以它们不会抛出Null pointer Exception。 让我们用一个例子来理解null的这个知识点。 NullExample6.java 输出 ![]() == 和 != 运算符在Java中,这两个运算符允许与null一起使用。这两个运算符在Java中检查对象是否为null时都很有用。 让我们用一个例子来理解这两个运算符如何与null一起工作。 NullExample7.java 输出 ![]() 每个Java开发者都应该了解以上所有关于null的知识点。 下一个主题Java中股票买卖利润最大化 |
Facing the Sun 问题涉及确定一行中能看到太阳的建筑数量,假设阳光来自特定方向(通常是左侧)。每座建筑的高度都会影响可见性,这使得它成为一个通常需要遍历和比较技术来解决的问题...
7 分钟阅读
在本节中,我们将用三种不同的设计创建 Christmas Tree Pattern 程序。Christmas tree pattern 也称为 Xmas patten。ChristmasTreePattern1.java import java.util.Scanner; public class ChristmasTreePattern1 { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.print("Enter the height of tree: "); int h = sc.Int(); //beginning of...
阅读 2 分钟
? 在本节中,我们将学习查找整数长度的不同方法。整数的长度是指该整数中数字的总数。我们可以通过以下方法找到整数的长度:使用 while 循环 使用...
5 分钟阅读
Java 中 Array 和 ArrayList 之间的区别 Array 和 ArrayList 是众所周知的。数组是 Java 提供的基本功能,而 ArrayList 是 Java Collections 框架的一个类。它属于 java.util 包。Java 数组数组是一个动态创建的对象。它用于...
阅读 3 分钟
? 内存映射文件 当文件被映射到内存时,会创建一个 MappedByteBuffer,此时操作系统会将文件的内容加载到进程的虚拟内存中。借助内存映射文件,应用程序可以读写文件中的数据。缓冲区修改...
阅读 4 分钟
在Java中,异常是程序执行期间发生的事件,会中断程序指令的正常流程。我们不想要且会阻碍程序正常执行代码的错误或缺陷被称为...
阅读 10 分钟
在 Java 中,类是创建对象的蓝图。它定义了对象的属性和行为。泛型类是可以处理任何类型数据的类。在本文中,我们将探讨如何创建自定义泛型类...
阅读 4 分钟
正在考虑的问题是指确定二叉树中任何路径上节点值的最大乘积。路径被认为是 starting from a particular node to any other node in...
5 分钟阅读
java.text.ChoiceFormat 是一个包含 parse() 函数的类。要检索 ChoiceFormat 对象中特定格式的限制值,请使用 ChoiceFormat 类。语法:public Number parse(String text_name, ParsePosition status_Of_choice) 参数:- 其中此方法接受的参数是 text_name:即文本...
阅读 3 分钟
给定一个包含 n 个数字(正数或负数)的数组 arr。任务是返回重新排列整数元素的数组,使得没有两个相邻元素相等。如果有多个有效排列,则返回任何一个...
阅读 15 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India