关于btn_num和btn_num1的范围?

关于btn_num和btn_num1的范围?

老师,内个局部变量btn_num1为什么不能在switch中使用而btn_num可以在switch中使用

正在回答 回答被采纳积分+1

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

3回答
好帮手慕柯南 2019-09-01 10:02:43

同学的理解是正确的,这里每点击一个按钮,btn_num1都会重新定义一下,导致之前的值消失了。

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

  • 提问者 精慕门618366 #1
    只有赋值完直接使用,还没有到下一次单击事件,就可以使用?
    2019-09-01 10:26:55
  • 好帮手慕柯南 回复 提问者 精慕门618366 #2
    同学是的。祝学习愉快~
    2019-09-01 11:25:42
提问者 精慕门618366 2019-08-31 21:34:41

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

老师,这个y和dayEnd不也是局部变量,为什么可以在if内赋值呢?

  • 提问者 精慕门618366 #1
    老师,当btn num1属于局部变量时,在点击=时,会直接触发到case “=”从而使用不到先前赋值的btn num1,因为先前的btn num1已失效,所以case“=”的btn num1会只声明没有赋值,会undefined,而设为全局变量会使btn num1从第一次赋值就会保留,所以不会undefined,这样说对吗。
    2019-08-31 23:13:44
好帮手慕阿满 2019-08-31 18:35:13

同学你好,btn_num1可以在switch范围内使用,如:

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

同学说的不可以使用是指如下undefined吗?

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

这里是因为只定义了btn_num1,赋值是在case后,所以局部变量btn_num1只能在赋值的case后使用。

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

  • 提问者 精慕门618366 #1
    老师,btn_num1的范围不是在else范围内吗,那么不可以在switch外定义,然后在case后给btn_num1赋值?
    2019-08-31 20:51:56
  • 提问者 精慕门618366 #2
    btn_num1在else内定义,那么在整个else范围内不都可以使用?
    2019-08-31 21:24:07
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10205    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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