public class Test3 {
public static void main(String[] args) {
char a;
a='*';
System.out.println(a);
int ia=(int)a;
System.out.println(ia);
a+=a;
System.out.println(a);//此处输出的为ASCII码为84的字母T
int b=84;
System.out.println(b);//此处输出84
}
}
我想问一下,a+=a,难道不是先转化为int再进行他们的ASCII相加的吗?应该是42+42=84,转化后a应该也是int类型的,为什么它会输出T,而直接定义的变量b=84为什么会直接输出84呢?谢谢!
a+=a的过程中,不是在将a转化为int型之后才进行相加的吗?也就是说在做完这个操作后a是不是已经变成int型了呢?
a+=a的过程中,不是在将a转化为int型之后才进行相加的吗?也就是说在做完这个操作后a是不是已经变成int型了呢?
追答你把一个整数放在char类型中(不超过char范围),然后输出,会输出什么呢,是数字还是字符?应该和数值无关,和放入的引用有关。