我写了以下代码
class JavaApplication1{
public static void main(String...strarr) throws Exception{
char c = '';
c = 'c';
System.out.println(c);
}}
输出:线程“main”中的异常java.lang.RuntimeException:无法编译的源代码 - 错误的树类型:at javaapplication1.JavaApplication1.main(JavaApplication1.java:6)
我没知道它为什么会抛出异常? 非常感谢您的回复
答案 0 :(得分:4)
char c = '';
由于''
不是有效字符而java编译器抱怨它。
来自docs
char数据类型是单个16位Unicode字符。它的最小值为'\ u0000'(或0),最大值为'\ uffff'(或65,535(含))。
在上面的列表中,您可以将第一个表格集元素用作char
答案 1 :(得分:1)
''在java中不是有效字符。默认char初始化为'uffff'
答案 2 :(得分:0)
由于某些未知原因,它不受支持。只需使用
char c = 0;
或
char c = (char) -1;
而是定义无效。