【发布时间】:2018-01-30 01:54:24
【问题描述】:
我有以下 beanshell 断言代码;当 value3 具有空值时,此代码似乎给出了异常。否则它工作正常。 我认为它必须与 BigDecimal 做一些事情,但我不确定如何处理空值。有人可以帮我吗?
import java.math.BigDecimal;
import java.math.RoundingMode;
String value3 = vars.get("budget_api");
String value4 = vars.get("c_budget_1");
if(value3 != null) {
BigDecimal value10 = new BigDecimal(value3);
String value11 = value10.setScale(8, RoundingMode.HALF_UP).stripTrailingZeros().toPlainString();
if(!value11.equals(value4)) {
Failure = true;
FailureMessage = ": budget doesnt match, api: "+ value11 + " db: "+ value4;
print(FailureMessage);
}
}
else {
if(value4 != null) {
Failure = true;
FailureMessage = ": budget doesnt match, api: "+ value3 + " db: "+ value4;
print(FailureMessage);
}
}
【问题讨论】: