检查命令行参数的形式是否正确

Check if command line arguments are in a correct form

所以如果我的程序像这样正确启动:

java Test Tim;John;10;20

但是我想阻止用户输入此表单以外的内容。

因此,每当命令行参数不是 String;String;int;int 形式时,我希望我的程序退出并打印错误代码。

我不知道该怎么做。对于如果有人没有输入任何内容的情况,我只是使用 try catch with ArrayIndexOutofBounds 但我不知道如何特别捕获所有可能的命令行参数,这些参数的格式不正确。

我希望它能给你一些想法:

 public static void main(String[] args) {
        args = args[0].split(";");
        if (args.length != 4) {
            throw new IllegalArgumentException("Program starts with parameters like this: (String, String, int, int)");
        }

        try {
            int firstInt = Integer.parseInt(args[2]);
        } catch (NumberFormatException e) {
            throw new IllegalArgumentException("Program starts with parameters like this: (OK, OK, int, int)");
        }

        try {
            int secondInt = Integer.parseInt(args[3]);
        } catch (NumberFormatException e) {
            throw new IllegalArgumentException("Program starts with parameters like this: (OK, OK, OK, int)");
        }
    }