为int分配int时,为什么不需要显式转换

时间:2016-09-08 10:18:56

标签: java

在下面的代码中:

char c = (char)64; //1
char c1 = 64;       //2

char c2 = (int)64;  //3
System.out.print((int)c2);//4.prints 64
System.out.print(c2);//5.prints @
  1. 第1行:编译好。没问题。

  2. 第2行:隐含地尝试向下转发。它汇编得很好。为什么不编译时间错误?

  3. 第3行:编译好。再次,为什么不CT错误?

  4. 第4行:按原样打印64。没问题。

  5. 第5行:为什么要打印@。我知道@对应ASCII值64.但我们已明确表示(int)64。为什么它的行为类似于c2 = (ASCII)64*
  6. *我的语法

0 个答案:

没有答案