- public class SuanshuDemo
- {
- public static void main(String[] args)
- {
- //算数运算符//+,-,*,/,%,++,--;
- int a=1,b=0,c=2,d=3,e=4,f=5;
- /**
- * 使用了普通代码块
- */
- {
- a = 11;
- b = 21;
- }
- /**
- * 使用了普通代码块
- */
- {
- boolean x;
- x = a < b;
- System.out.println("a="+a+",b="+b);
- //为什么结果是a=11,b=21;上面的作用域怎么会跑到这个作用域来?
- /**
- * 因为你的变量是定义在整个方法域里面的,而在上面的普通代码
- * 块中修改了它的堆内存的值。从而a=11,b=21了,当然x的值也为
- * true(11<21)。
- */
- System.out.println("x(boolean)="+x);
- //结果为什么是true不是false。
- }
- }
- }
复制代码 |