为什么Java程序不识别第二个命令行参数



构建一个随机数生成器,该发生器采用上边界输入,并由用户生成的数字并打印结果。

出于何种原因,我的程序(汇编(都不会将边界参数识别为第二个参数,而是根据我对参数的检查退出。

我对如何解决此问题以及我可能缺少的内容的理解将不胜感激。

谢谢!

import java.util.Random;
import java.util.Scanner;
public class RandNumGen{
    public static void main(String[] args){
// intro
System.out.println("*****************************************");
System.out.println("*Welcome to the Random Number Generator!*");
System.out.println("*    Discussion 7: Michael Stadnicki    *");
System.out.println("*****************************************");
// ask user to input numbers to be generated
System.out.println("Please enter how many random numbers you would like generated!");
Scanner numGen = new Scanner(System.in);
    int randomNum = numGen.nextInt();
System.out.println("We will generate " + randomNum +" random numbers!");
// ask user to input out boundary for the random numbers
System.out.println("Please enter the boundary for our random numbers to be generated!");
Scanner boundGen = new Scanner(System.in);
    int randomBound = boundGen.nextInt();
System.out.println("We will use " + randomBound +" as our boundary for generation!");
// build our random number generator
Random rNum = new Random();
// check our arguments
if (args.length == 2) {
    randomNum = Integer.parseInt(args[0]);
    randomBound = Integer.parseInt(args[1]);
} else {
    System.out.println("You are required to have 2 arguments on the command line!");
    System.exit(0);
}
// print our random numbers generated based on above bounds and numbers
for (int i = 0; i <randomNum; i++) {
    int numOutput = rNum.nextInt(randomBound + 1);
    System.out.println("Your random numbers are: " + numOutput);
}
}

}

尝试仅要求提供用户,不要使用args。而且不要使用两个不同的扫描仪,只需致电 numgen.nextint((;两次。

最新更新