java中的最终变量打印
打印6而java中的最终变量打印,java,final,Java,Final,打印6而System.out.println(a++)或a=a+1然后s.o.p(a)将给出错误 当最终值无法更改时,为什么要打印6 同时a++和a=a+1为a分配一个新值 a+1没有:它的计算结果比a中的值多1 评估声明: final int a=5; System.out.println(a+1) 将显示a的值在前后相同。在“中间代码”中,用 A++或 A= A+ 1 < /C> >(明显地使 A /代码>非最终的第一个)将显示 < < /代码>被更改。 这应该不会比System.out.
System.out.println(a++)
或a=a+1
然后s.o.p(a)
将给出错误
当最终值无法更改时,为什么要打印6 同时
a++
和a=a+1
为a
分配一个新值
a+1
没有:它的计算结果比a
中的值多1
评估声明:
final int a=5;
System.out.println(a+1)
将显示a
的值在前后相同。在“中间代码”中,用<代码> A++<代码>或<代码> A= A+ 1 < /C> >(明显地使<代码> A /代码>非最终的第一个)将显示<代码> < < /代码>被更改。
这应该不会比
System.out.println(5+1)
printing 6更令人惊讶,同时保持5
和1
的值不变。因为在您的示例中从未修改a
。打印a+1的结果。如果以后打印一个,您将看到它仍然是5
基本上是
System.out.println(a);
System.out.println(a+1);
System.out.println(a);
不能更改最终变量的值。
int a = 5;
int b = a+1;
System.out.println(b); // prints 6
System.out.println(a); // still prints 5