Я использовал jeval для некоторых задач по обработке данных и обнаружил потерю точности.Есть ли способ избежать потери точности при использовании jeval?Я хочу получить точный результат точно так же, как BigDecimal.
public class EvalTest {
private static Evaluator eva = new Evaluator();
public static void main(String[] args) {
try {
String formula = "780.0000000-259.9999998";
String res = eva.evaluate(formula);
BigDecimal a = BigDecimal.valueOf(780.0000000);
BigDecimal b = BigDecimal.valueOf(259.9999998);
BigDecimal c = a.subtract(b);
System.out.println("a");
} catch (Exception e) {
e.printStackTrace();
}
}
}
Если я использую jeval, формула "780.0000000-259.9999998" получит результат как "520.0000001999999", но если я использую BigDecimal, я могу получитьТочность результата "520.0000002".