为了账号安全,请及时绑定邮箱和手机立即绑定

例题中如果把num1=91前加上int,num2=74前加上int,num3=83前加上int

为什么执行结果显示num1,num2,num3值为0?

正在回答

3 回答

你不加int来赋值就是给成员变量(全局变量)赋值,在main里用到该变量时就输出你赋的值;如果你加了int就相当于你在那个方法里又定义了一个局部变量(和全局变量同名,同类型),并且赋了值,这时局部变量有值了,但全局变量还没赋值,还是默认为0,这时main输出的肯定是那个没赋值的全局变量,就输出默认值0

int num1=91;//是包括了定义一个变量并赋值两步

0 回复 有任何疑惑可以回复我~

首先是成员变量,还是局部变量,不同变量作用域中,默认值和主动赋值作用域也不一样!

0 回复 有任何疑惑可以回复我~

因为你这样操作只在方法内部可以使用该变量,在最后的main方法中输出时使用的是全局变量,即一开始你所设定的变量,系统自动赋初值为0,所以你输出的都是0。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

例题中如果把num1=91前加上int,num2=74前加上int,num3=83前加上int

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信