我还是没有明白

我还是没有明白

http://img1.sycdn.imooc.com//climg/5d2da5700001656706370481.jpg

这是我之前问的,我自己也做了实验,虽然说结果和老师的一样,

但是我需要一个解释

这是之前的回答,因为已经采纳了,不能继续回复

http://img1.sycdn.imooc.com//climg/5d2da5bf00016e2705740185.jpg

我开始还没有太仔细看,这里说input定义在try块中,但是你看代码,并不是

定义在try块中,只是在try块中进行初始化,如果说当在try块中初始化之后,它的值的范围只是仅限于

try块中的话

http://img1.sycdn.imooc.com//climg/5d2da6b20001f47904380332.jpg

那这个例子中的n也是定义在for块语句之外,然后在for块语句中初始化

,但是如果说此时的n的初始化的值只是能够作用在for语句块中的话,

那又为什么可以在外面输出n的值呢?希望老师可以解释一下

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,同学可以再去读两遍之前老师的回答。这里老师是说如果input定义在try中,只能在try中使用,如:

http://img1.sycdn.imooc.com//climg/5d2db1d50001b0af05770180.jpg

后边老师说到input在try块的外边用到,所以input变量是在try块外,main方法内定义的。

同学举得例子中,n是定义在for循环外,如:

http://img1.sycdn.imooc.com//climg/5d2db2300001171304320184.jpg

所以在循环也可以输出n。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 慕桂英爱吃大米 提问者 #1
    但是在程序中,input不是在try语句块中已经初始化了吗?
    2019-07-16 19:46:34
  • 慕桂英爱吃大米 提问者 #2
    难道它初始化的数据不算?
    2019-07-16 19:47:26
  • 同学你好,1、int input;是声明一个变量 input =43;这是变量的初始化,对变量赋值为43 ;int n=0-->这是对变量n的声明和赋值! 2、所以在课程案例中int input只是声明了一个变量并没有对变量赋值,在try块中对input赋值,就只能在try块中使用,因为在try块外还用了,所以需要在try块外,main方法内定义input变量,并且对input设定初始值来使用哦! 如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
    2019-07-17 10:59:10
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师