1.6.2 While loops

The boolean variable isNotAnInteger must be set to true to force the contents of the while loop to execute 

    /**
     * keep prompting for an integer until the user supplies one
     * using an input dialog box ,try/catch and a boolean variable
     * all with a while loop
     */
    public int inputInteger(){
        String prompt, str;
        int num= 0;
        boolean isNotAnInteger = true;
        prompt = "Enter an integer:  ";
        
        while (isNotAnInteger) {
            str = JOptionPane.showInputDialog(prompt,null);
            try{
                num = Integer.parseInt(str);
                isNotAnInteger = false;
            }
            catch(NumberFormatException e){
                 isNotAnInteger = true;
                 prompt = "You MUST enter an integer:  ";
            }
        }
        return num; 
    }

Comments