在练习 Java 时,我偶然想出了这个:
class test
{
public static void main(String arg[])
{
char x='A';
x=x+1;
System.out.println(x);
}
}
我本以为程序会抛出错误,因为在数学中我们不能将数字值1
与字母A
相加,但是下面的程序能够正确运行并打印输出:
我认为这个程序会报错,因为在数学中我们不能将数字值1
与字母A
相加,但是这个程序能够正常运行并输出结果:
B
怎么可能呢?
x
是一个字符,Unicode 值为'B'
的 Unicode 值等于'A'
的 Unicode 值加 1。 - Grijesh Chauhanx *= 1.1;
,它也可以编译通过。;) - Peter Lawrey