在 Java 中表示空字符

Mohammad Irfan 2023年1月30日 2021年11月8日
  1. 在 Java 中创建空字符
  2. 在 Java 中通过传递空字符创建空字符
  3. 在 Java 中使用 Unicode 值创建空字符
  4. 在 Java 中使用 MIN_VALUE 常量创建空字符
在 Java 中表示空字符

本教程介绍如何在 Java 中表示空字符。

在 Java 中,我们可以有一个空的 char[] 数组,但我们不能有一个空的 char,因为如果我们说 char,那么 char 至少代表一个字符,而空的 char 没有意义。空字符值不属于任何字符,因此 Java 会给出编译时错误。

要创建一个空字符,我们可以为其分配一个空值 \0 或默认的 Unicode 值 \u0000\u0000 是 Java 编译器在创建对象时使用的 char 的默认值。

在 Java 中,像其他基元一样,char 必须有一个值。让我们通过一些例子来理解一下。

在 Java 中创建空字符

让我们在 Java 中创建一个空字符并尝试编译代码。请参见下面的示例,我们创建了一个单独的字符变量 ch 并打印其值以检查它是否有任何要打印的内容,并查看它是否会引发编译时错误。

public class SimpleTesting{
	public static void main(String[] args){
		char ch = '';
		System.out.println(ch);
	}
}

输出:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
	Invalid character constant

由于字符常量无效,上述代码示例无法编译。这意味着 Java 无法识别空字符,但如果我们分配一个带有空格的字符,代码将成功编译并在控制台打印一个空格。

我们不能将空格字符与空字符混淆,因为两者是不同的,Java 对待它们的方式也不同。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		char ch = ' ';
		System.out.println(ch);
	}
}

在 Java 中通过传递空字符创建空字符

这是另一种可用于创建空字符并可以避免代码编译失败的解决方案。在这里,我们使用 \0 来创建空字符,它工作正常。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		char ch = '\0';
		System.out.println(ch);
	}
}

在 Java 中使用 Unicode 值创建空字符

我们可以使用\u0000 值在 Java 中创建一个空字符。Java 编译器使用此值设置为 char 初始默认值。它表示显示空字符的 null。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		char ch1 = '\u0000';
		System.out.println(ch1);
	}
}

在 Java 中使用 MIN_VALUE 常量创建空字符

Java Character 类提供了一个 MIN_VALUE 常量,表示字符实例的最小值。在 Java 中,最小值是一个\u0000,可以使用 Character 类的 MIN_VALUE 常量获得,并且可以分配给任何 char 变量以创建一个空 char。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		char ch = Character.MIN_VALUE;
		System.out.println(ch);
	}
}

如果你正在使用 Character 类,则可以直接使用 null 文字在 Java 中创建一个空的 char 实例。由于 Character 类是从 Object 类派生的,我们可以将 null 作为实例分配。请参阅下面的示例。

public class SimpleTesting{
	public static void main(String[] args){
		Character ch = null;
		System.out.println(ch);
	}
}

相关文章 - Java Char