2016-01-13 161 views
-2

我有一个做while循环,我需要检查while条件中的变量是否是一个数字。我怎么做?如何检查while条件中的变量是否是一个数字?

do { 
     try 
     { 
      String n = JOptionPane.showInputDialog("Enter a number"); 
      int number= Integer.parseInt(n); 
     } 
     catch(NumberFormatException e) 
     { 
      System.out.println("Not a Number"); 
     } 
    } while (????); 
    System.out.println("You entered a number"); 
} 

}

+1

你可以做一个',而(真)',并在'int number'语句之后插入'break;'语句。 –

+0

由于范围确定你没有在while循环中的变量.. –

+0

虽然不是你想要做的。循环使用时,while中的条件应该是检查循环是否应该继续 – Razib

回答

1

您可以使用一个布尔值:

boolean isNotNumber = true; 
do 
{ 
    try 
    { 
     String n = JOptionPane.showInputDialog("Enter a number"); 
     int number= Integer.parseInt(n); 
     isNotNumber = false; 
    } 
    catch(NumberFormatException e) 
    { 
     System.out.println("Not a Number"); 
    } 
} while (isNotNumber); 
System.out.println("You entered a number"); 
0

你也可以使用下面的代码:

do { 
     try { 
      String n = JOptionPane.showInputDialog("Enter a number"); 
      int number = Integer.parseInt(n); 
      if (number <=0|| number >0){ 
       break; 
      } 
     } catch (NumberFormatException e) { 
      System.out.println("Not a Number"); 
     } 
    } while (true); 
    System.out.println("You entered a number"); 
} 
相关问题