我正在使用while循環(huán)從控制臺(tái)獲取輸入,并調(diào)用我的input()方法。但是,當(dāng)我嘗試關(guān)閉掃描儀對(duì)象時(shí),它會(huì)給出運(yùn)行時(shí)錯(cuò)誤。當(dāng)對(duì)象未關(guān)閉時(shí),程序會(huì)正確運(yùn)行,但日食會(huì)警告說資源泄漏:'s'永遠(yuǎn)不會(huì)關(guān)閉。如何解決?我的輸入代碼是 String input() { try { Scanner s = new Scanner(System.in); String str=s.nextLine(); s.close(); // error because of this return str; }public class validation { public static void main(String args[]) { try { String name; String email_id; String number; validation v= new validation(); do{ System.out.println("Enter the name"); name=v.input(); } while (!(v.validate_name(name)) ); do{ System.out.println("Enter valid Mobile Number"); number=v.input(); } while(!(v.validate_number(Long.parseLong(number))) || !(v.filevalidate(number))); do{ System.out.println("Enter valid Email_id"); email_id=v.input(); } while(!(v.validate_email(email_id)) || !(v.filevalidate(email_id))); v.writeToFile(name,number,email_id); } catch(Exception e){System.out.println(e);}錯(cuò)誤輸出為輸入名稱Justin輸入有效的手機(jī)號(hào)碼java.util.NoSuchElementException:找不到行java.lang.NumberFormatException:null
添加回答
舉報(bào)
0/150
提交
取消