Java-Simple way to check command line input to enter a number-Give error message if not a number and ask again to input
If you want to take a commandline input through BufferedReader or Scanner and you want user to enter a number. So in this solution user is asked to enter a number and if it is not a number (throws NumberFormatException) error message is displayed and again asks for user to enter. Until user enters a number this continues. This is simple.
Here is the code with comments explaining the code.
Here is the code with comments explaining the code.
import java.io.*; class InputNumber{ public static void main(String args[]){ boolean success=false; String value=null; int number_value=0;//number value is stored System.out.print("Enter Number:"); //loop continues until user entered a number,success //will assigned true when user entered a number and while //loop will terminate while (!success){ try{ BufferedReader bf=new BufferedReader (new InputStreamReader(System.in)); value=bf.readLine(); number_value=Integer.parseInt(value); success=true;//Come to this point only if the // exception is not thrown System.out.println("\nSuccess! You Entered a Number: "+number_value); }catch(IOException e){ }catch(NumberFormatException e){//When string did //not contained a numer it goes here System.out.print("\nWrong value, please enter a number!\nEnter Number :"); success=false; } } } }
Comments
Post a Comment