有没有办法处理ReactJS
的数量(顺序)?我使用NumberFormatException
操作数[]制作了一个计算器,如下所示,我想写错误发生的时间。当我输入" 2 + k"时,表示"操作数[1]输入错误的消息。"应该出来。我该怎么做?
答案 0 :(得分:0)
首先,更换线
System.out.println("operand[] has the wrong input.");
与行
System.out.println(e.getMessage());
现在,您可以使用MyCalculator.calculate()
构造函数在NumberFormatException(String)
方法中抛出异常时传递消息。它看起来像这样:
calculate(String expression)
{
//validate input code
//...
//if operand 0 not valid
throw new NumberFormatException("operand 0 has the wrong input");
//if operand 1 not valid
throw new NumberFormatException("operand 1 has the wrong input");
//rest of calculate method
}
答案 1 :(得分:0)
也许你可以定义一个新的例外。例如CalculatorException
可以包含有关计算的更多特定信息,例如哪个操作数不正确。或者你甚至可以定义另外一个例外IllegalOperandException
,它可以扩展CalculatorException
。然后您的方法calculate
可以声明为抛出CalculatorException
。总之,我们的想法是定义一个新的异常层次结构,以提供与您的问题领域更相关的信息。
然后,您的代码可能如此:
try {
System.out.println("result: " + MyCalculator.calculate(expression));
System.out.println();
} catch(CalculatorException e) {
System.out.println(e.getMessage());
}