对不起真的很愚蠢的问题,我正在学习一门新语言并使用这段代码:
public class Exercise01 {
int i;
char c;
public static void main(String[] args) {
Exercise01 E = new Exercise01();
System.out.println("i = " + E.i);
System.out.println("c = [" + E.c + "]");
}
}
/* Output:
i = 0
c = [
*/
Run Code Online (Sandbox Code Playgroud)
为什么输出不会产生"]"字符?它与Unicode有关吗?
PostEdited:变量Ec未初始化用于实验目的.
您正在尝试打印空字符,因为您char c不需要初始化。即,\0有趣的是,您无法轻松复制和粘贴此字符,因为大多数 C 代码将其视为字符串标记的结尾。
]当我运行代码时我看到了。
尝试更改您的代码
char c = '?';
Run Code Online (Sandbox Code Playgroud)
给我一个输出
i = 0
c = [?]
Run Code Online (Sandbox Code Playgroud)
重现此问题的一种方法是在 unix 上运行
java Main | more
Run Code Online (Sandbox Code Playgroud)
哪个输出
i = 0
c = [
Run Code Online (Sandbox Code Playgroud)