public class Test1 {
static {
int x= 5;
}
static int x, y;
public static void main(String[] args) {
x--;
myMethod();
System.out.println(x + y++ + x);
}
public static void myMethod() {
y = x++ + ++x;
}
}
答案:2
这里需要注意的是第3行的int x = 5;因为它是局部变量,x=5不影响后面的值。
public class Test1 {
public static void main(String[] args) {
int j = 0;
for(int i = 0; i < 100; i++) {
j = j++;
}
System.out.println(j);
}
}
答案:0
因为Java用了中间缓存变量的机制,所以,循环体里面的j=j++可换成如下写法:
temp = j;
j = j + 1;
j = temp;