日期:2014-05-20  浏览次数:20643 次

菜鸟初学,请教大牛!
class Testcuo{
  public static void main(String[] arg){
  int i=12;
  System.out.printf("%c",i);
  } 
  }

是可以编译运行的。

  class Testcuo{
  public static void main(String[] arg){
  char i='t';
  System.out.printf("%d",i);
  } 

  }

编译没错,运行会报错。为什么????????


------解决方案--------------------
是%d,意思是以整数形式读入或输出数据.
而你的i是char类型的
报错是不能把char类型的数据转成整型,
------解决方案--------------------
因为char与int类型能够相互转换...char里放的是ASCII码或者是UNICODE码..
------解决方案--------------------
看来就只能(int)i了