我正在使用while循环从控制台获取输入,并调用我的input()方法。但是,当我尝试关闭扫描仪对象时,它会给出运行时错误。当对象未关闭时,程序会正确运行,但日食会警告说资源泄漏:'s'永远不会关闭。如何解决?我的输入代码是 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);}错误输出为输入名称Justin输入有效的手机号码java.util.NoSuchElementException:找不到行java.lang.NumberFormatException:null
添加回答
举报
0/150
提交
取消