如果去掉了(char)那么就会出现类型不符合的情况出现.
同理.'1'对应49,'2'对应50,49+50=99对应'c'

解决方案 »

  1.   

    有没可能是int->char的强制转化呢,我看也不想,因为i and i2都是char,类型转化肯定是那样,不然去掉char,possible loss of precision,是否java中有binary类型,我再研究研究在告诉你
      

  2.   

    严重同意beyondii(十万个为什么)
      

  3.   

    char,byte,short类型之间的运算结果自动会转化为int型,这是Java的处理方式,而int到char是可能产生数据损失的,需要强制转换,因此需要加上(char)。
    至于结果是'c',beyondii已经讲的很清楚了。
      

  4.   

    char是当成数值来存储的,不知你要的是不是下面的结果:
        char[] i = {'1'};
        char[] i2 = {'2'};
        String i3 = (new String(i)+ new String(i2));
        System.out.println(i3);
    结果:12