final int a=10; //定义常量a,并为其赋初始值为10.
System.out.println(a+1);//输出常量a+1的值。
输出的结果是:11
没有任何报错。
a的值是常量,而且也没重新赋值,有什么疑问吗?
根号申 发表于2017-10-17 10:34
a是常量值,并赋给了初始值10。常量是一旦赋给了初始值就不会改变也不能改变的一个值。
但是我这里,在输出时使用了:a+1;也就是说在这里改变了a的值,也就违背了常量的定义,那系统为什么还给予认可并输出相加后的值呢?
yf_mrkj 发表于2017-10-17 14:17
哦,我明白了。
我是把一个常量a和一个整型数值相加后交给程序,再由程序输出他们的相加后的结果,所以在这里不存在改变常量a的值。这就相当于:
int b=a+1;
System.out.println(b);
不知道我的明白是否有误?
yf_mrkj 发表于2017-10-17 14:22
没错
根号申 发表于2017-10-17 16:38
非常感谢老师的指点!