Arity.jar中的SyntaxException

时间:2014-07-18 14:41:28

标签: java arity

我正在使用Arity算术引擎进行计算。所以我想知道当我使用

时会出现什么异常
  

double res = Symbols.eval(“string”);

我把它封装在一个试块中

try{
double res = Symbols.eval("Expression");
return res;
}
catch(SyntaxException s)
{
System.out.println("Exception..!");
}

所以我想知道所有异常的产生因此我可以知道我可能会出错的地方。

3 个答案:

答案 0 :(得分:1)

我不确定我是否完全理解这个问题,但是如果您捕获任何异常然后打印堆栈跟踪,您可以更准确地确定抛出的异常类型以及导致它的原因。这样您就可以准确地区分您提到的SyntaxError与其他可能因其他原因而出现的例外情况。

try
{
    double res = Symbols.eval("Expression");
    return res;
}
catch(Exception e)
{
    e.printStackTrace();
}

打印堆栈跟踪非常重要,因为它可以让您准确了解代码中代码的来源。如果您只是做一个简单的System.out.println("Error happned"),那么您将无法获得尽可能多的信息。

当您打印堆栈跟踪时,您可以看到精确的方法调用链,这些方法调用导致最终失败,直到该行,这使得很容易找出错误产生的原因。

答案 1 :(得分:0)

我对Arity不熟悉,特别是因为我找到的所有链接都会导致404错误页面。但除此之外,你可以捕获已知的异常,以及可以在以后重构以处理它的任何其他异常的最终捕获。

try {
    double res = Symbols.eval("Expression");
    return res;
} catch (SyntaxException s) {
    System.err.println("Syntax exception");
} catch (Exception e) {
    System.err.println("Unknown exception caught!");
}

答案 2 :(得分:0)

我确定System.out.println(e.getMessage());会为您提供更多有用的信息。