Java - 如何检查在JOptionPane.showInputDialog中输入的内容

时间:2013-05-04 13:47:55

标签: java swing random joptionpane

这是我的代码

import java.util.Random;

import javax.swing.JOptionPane;
public class randomnumbersv2 {

    public static void main(String[] args){
        Double randomnumber = Double.parseDouble(JOptionPane.showInputDialog("Please enter the maximum number that you would like this program to generate"));

        Random rnd = new Random();
        System.out.println(rnd.nextInt(How would I make sure that what is eneted in the Joption can be put into here)); // change int to whatever number you want, this number will be the max random number generated

        JOptionPane.showMessageDialog(null, "Your random number is" + randomnumber);

    }

}

1 个答案:

答案 0 :(得分:2)

Random#nextInt接受一个整数值作为其上限。因此输入的值应该是这样的。另外,根据文档,数字应为正数:

try {
   int maxNumber = 
           Integer.parseInt(JOptionPane.showInputDialog("Please enter input"));

   if (maxNumber > 0) {
     Random rnd = new Random();
     System.out.println(rnd.nextInt(maxNumber));
   } else {
     throw new IllegalArgumentException("Non positive number not allowed");
   }
} catch (NumberFormatException e) {
   throw new IllegalArgumentException("Invalid integer", e);
}