关于java赋值的新手的一个小误区

初学java我的一个小误区。发出来希望不要有人和我一样犯同样的错误

首先我们定义一个Calc函数:

public class Calc {
    void add(int x) {
        x+= 1;
        System.out.println("x="+x);
    }
}
我们定义啦一个add,里面有一个int类型的x,我们让x+=于1,然后打印x的值;

这个时候x是没有值的,我们需要定义主函数main来给x赋值:

public static void main(String[] args) {
    // write your code here
    int a = 2;
    Calc c = new Calc();
    c.add(a);
    System.out.println("a="+a);
}
首先我们定义啦一个int类型的a,让a=2。

然后我们新创建一个Calc类型的c让c指向新建的Calc,

然后 我们把a的值附给add,所以现在add里面的x的值为2,

程序继续执行x+=1,现在x的值应该为3,

我们打印x等于3。

然后我们回到Main函数打印a的值,问a=多少,我记得当时我们班大部分人都觉的等于3,

但是a等于2,你们觉的可能听不明白。打印x等于3为什么a还是等于2。

所以我画啦一个草图希望能说的明白一点

由图我们可以看出Main和Calc函数是两个独立的程序,

他们的值一般是不会影响到另一个程序的。

由此a的值一直都没有改变所以a还是等于2.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值