char c = '\u0000';
当我打印 c
时,它在命令行窗口中显示“a”。
那么 char
类型字段的默认值是多少?
有人说 '\u0000'
在Unicode中表示null;那正确吗?
原文由 user1298336 发布,翻译遵循 CC BY-SA 4.0 许可协议
char c = '\u0000';
当我打印 c
时,它在命令行窗口中显示“a”。
那么 char
类型字段的默认值是多少?
有人说 '\u0000'
在Unicode中表示null;那正确吗?
原文由 user1298336 发布,翻译遵循 CC BY-SA 4.0 许可协议
‘\u0000’ 是字符的默认值。它的十进制等价物是 0。
当你声明一些 char 变量而不初始化它时,’\u0000’ 将默认分配给它。
看到这段代码
public class Test {
char c;
public static void main(String args[]) throws Exception {
Test t = new Test();
char c1 = '\u0000';
System.out.println(t.c);
System.out.println(c1);
System.out.println(t.c == c1);
}
}
此代码将为最后一次打印打印 true 。
原文由 Chandra Sekhar 发布,翻译遵循 CC BY-SA 3.0 许可协议
8 回答6k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
2 回答3.2k 阅读
2 回答3.9k 阅读
1 回答2.2k 阅读✓ 已解决
3 回答1.6k 阅读✓ 已解决
char
属性的默认值确实是'\u0000'
(空字符),如 Java 语言规范第 §4.12.5 节“变量的初始值” 部分所述。在我的系统中,行
System.out.println('\u0000');
打印出一个小方块,这意味着它不是可打印字符 - 正如预期的那样。