关于Scanner 输入的关闭

关于Scanner 输入的关闭

问题:在do-while的循环中,定义sc,在循环中和循环外关闭sc,运行程序都会报错,这个要怎么处理?

https://img1.sycdn.imooc.com//climg/61ac2c4d0935600306530593.jpg


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

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

1回答
好帮手慕小蓝 2021-12-05 11:10:38

同学你好,可以在第16行的位置添加sc.close();来关闭Scanner。

祝学习愉快~


  • 提问者 qq_飘飘无影_0 #1

    https://img1.sycdn.imooc.com//climg/61adb739094fa6c407430886.jpg

    2021-12-06 15:09:48
  • 同学你好,建议同学将Scanner sc = new Scanner(System.in);语句放在循环外。这样做的好处是:

    1. 可以节省内存空间:不必每次循环的时候都创建Scanner对象,即使可以正常关闭Scanner,这个对象所占有的空间也不会被立即释放,也会造成空间的浪费。

    2. 可以加快运行效率:每次循环创建Scanner都是对效率的牺牲,可以一次创建多次使用。

    3. 关闭方便:可以在循环结束之后,一次关闭即可。

    祝学习愉快~

    2021-12-06 15:44:54
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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