public class Sample { public static int count2=9; public static void main(String[] args) {
Sample sample1 = new Sample();

int count2 = sample1.count1+1;
System.out.println(sample1.count2);
System.out.println(sample1.count2); }
}
  控制台第一次输出是10 第二次输出还是10
  我第一次不是指定了一个+1了吗?  第二次 又执行了一次+1为什么还是10呢?  
  
  不知道怎么回事!!?

解决方案 »

  1.   

    你这段代码都编译不过去吧?而且说明楼主的基础还不好,
    1. count1 哪里来的?
    2. 即便它是count2,+ 1 你赋给了自己了吗?
      

  2.   

    楼主的代码好像有点问题!!  count1不知道是一个什么变量! 没有见其的定义!!!
      

  3.   

    问题比较多。
    首先count1未定义;
    其次两个count2不是同一个变量(建议看看变量的作用域);
    最后,连续输出两次count2,我觉得当然不会有什么变化。
      

  4.   

    不考虑你手误的情况,对一个变量加一的写法是sample1.count2 = sample1.count2+1;
    或者
    sample1.count2++ 以及 ++sample1.count2;而不是你的
    int count2 = sample1.count2+1;你重新定义的count2 和前面定义的count2是完全不同的2个变量!
      

  5.   

    int count2 = sample1.count1+1;
    前面的int 去掉。
      

  6.   

    count1哪里来的呀?而且在main()方法中定义的是局部变量,根本不需要通过类对象来访问呀。想必是楼主count1和count2不小心写混起来了吧~~~