菜鸟新手,在Java的简单程序编写过程中,如上代码出现了小小的提示,这种简短的小程序,不关闭也可以运行出正确的结果,由于强迫症,对于这点小毛病也是不能容忍的,再查了百度之后才知道原因。
程序在前面声明了一个Scanner变量input,那么系统就为input开辟了一个空间,而当程序结束后,系统并不会自动收回input所占用的空间,造成资源浪费。于是提示你input永远不会close。这样,在不需要使用input的时候,调用input.close()函数,手动收回空间就好了。可把input.close()放在main函数最后一句就可以解决了。
其中有大神在main函数开始后用
try{程序体}
最后用:
finally{
input.close();
}
也可以解决这个问题,但是这样代码不够优化,不如直接在最后加一句。
最后附带一句eclipse自动优化代码的快捷键是Ctrl+shift+F (但是我的好像没有反应。。。。)