public static void main(String[] args) { byte a = 3; byte b = 7; byte c = 10; c = 3+7;//3、7是常量,int类型。 System.out.println(c);//可以正确输出。 c = a + b;//编译报错,因为a、b是变量,无法检查a、b的范围是否在可存储范围之内。 /* 为什么c = 3+7;可以正确输出,c = a + b;却编译报错? 因为 c = 3+7;3、7是常量,值是固定的,不会变,可以判断在存储范围之内。 c = a + b;编译报错,因为a、b是变量,无法检查a、b的范围是否在可存储范围之内。 结论:右边不确定是无法判断并赋值的。 */ }
注意:整数默认是int类型。
结论:右边不确定是无法判断并赋值的。
2.下述代码的运算结果为何是3?
public static void main(String[] args) { int a = 3; a = a++; System.out.println(a); }