1、以下代码可以正常编译吗?
char c1 = "a";
编译失败,以下是通过javac命令编译的结果
错误: 不兼容的类型: String无法转换为char; 这是官方给上面一行代码报的错误提示;通过这个提示我们可以分析出:双引号表示的字面量("a")是String类型的,变量c1是char类型的,应为String类型是无法转换成char类型的,所以编译失败;
2、以下代码可以正常编译吗?
char c2 = 'ab';
编译失败,以下是通过javac命令编译的结果
错误: 未结束的字符文字;这是官方给上面一行代码报的错误提示;为什么提示的是未结束的字符文字呢?因为编译器在执行到a的时候,认为a的后面一定是一个单引号,但是编译器在a的后面没有找到单引号,所以编译出错了;
3、以下代码可以正常编译运行吗?
char c3 = 97; System.out.println(c3);
以上代码可以正常编译运行,c3打印结果为:a