有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java可以退出代码还是应该终止main?

我不熟悉异常处理,如果发生意外情况,我不知道在哪里停止代码

我有一个处理命令行参数的程序。我将参数和值存储在HashMap中。我有一个叫做GetAlgortim的方法,可以从地图上得到算法。例如:参数:-alg shift,方法返回shift。值转移是必要的,因为另一种方法使用它来决定下一步要做什么

public String getAlgorithm() {
        return argumentMap.get("-alg");
}

如果没有给出-alg(参数:-algWrong shift),可以退出代码吗

public String getAlgorithm() {
        if (argumentMap.get("-alg") == null){
            System.out.println("-alg is not given");
            System.exit(1);
        }
        return argumentMap.get("-alg");
}

或者我应该抛出一个异常并在调用该方法的地方处理它

public String getAlgorithm() {
        if (argumentMap.get("-alg") == null)
            throw new NullPointerException("-alg is not given");
        return argumentMap.get("-alg");
}

共 (1) 个答案

  1. # 1 楼答案

    只要尝试抛出带有正确错误消息的自定义异常,而不是系统异常。出口(1)