java吧 关注:1,225,844贴子:12,682,535
  • 8回复贴,共1

一个简单的问题,求讲解。。

只看楼主收藏回复

public class ParamaterDemo {
public static void main(String[] args) {
int a=1;
add(a);
System.out.println(a);
}
public static int add(int a){
++a;
return a;
}
}
方法里不论写a++还是++a 最后输出的结果总是1...为什么不是2呢


IP属地:山西1楼2016-01-26 19:46回复
    一看就是新手,为什么是2,如果是变量名影响你的话,你把add方法的变量改成b,然后再考虑


    来自Android客户端2楼2016-01-26 20:03
    收起回复
      试试把static去掉看看


      IP属地:江苏来自Android客户端3楼2016-01-26 20:13
      回复
        顶下,


        IP属地:江苏来自Android客户端4楼2016-01-26 20:14
        回复


          IP属地:湖北5楼2016-01-26 20:42
          回复
            System.out.println(add(a)); //主函数的a值没变,


            IP属地:江苏来自Android客户端6楼2016-01-26 20:49
            回复
              第四行改成a=add(a);就是2了


              IP属地:四川7楼2016-01-26 21:57
              回复