java - 如何在java selenium中对两个数组字符串值求和并存储到另一个数组列表中?

标签 java selenium arraylist

我有 4 个数组,至少存储 6 个值。

ArrayList<String> GrossAmt = new ArrayList<String>();
ArrayList<String> TaxAmt = new ArrayList<String>();
ArrayList<String> DiscAmt = new ArrayList<String>();
ArrayList<String> FinalAmt = new ArrayList<String>();

GrossAmt = [ 66.5928,  110.9880,  369.9592,  92.4898,  249.7221,  27.7469] 
TaxAmt = [ 3.8632,  6.4386,  21.4621,  5.3655,  14.4869,  1.6097] 
DiscAmt =[ 2.2137,  3.6895,  12.2984,  3.0746,  8.3014,  0.9224] 
FinalAmt =[ 68.2423,  113.7371,  379.1229,  94.7807,  255.9076,  28.4342]

我需要得到grossAmt+TaxAmt-DiscAmt的结果并与FinalAmt进行比较。

for(int g = 0; g < GrossAmt.size(); g++){
                int Expected = 0;
                Expected = Integer.valueOf(GrossAmt.get(g)) + Integer.valueOf(TaxAmt.get(g))- Integer.valueOf(DiscAmt.get(g));
                int Actual = Integer.valueOf(FinalAmt.get(g));
                LogFileControl.logInfo(Actual);
                LogFileControl.logInfo(Expected);


             if (Actual == Expected ){

                 LogFileControl.logInfo("Final Amount Passed!");

             }else
             {
                 LogFileControl.logError(("Actual: " + Actual) + " Expected: " + Expected);

             }

但是我遇到了错误。

最佳答案

看起来金额是十进制,而您是通过将它们转换为整数来执行比较的。我建议使用 double 文字类型进行比较,例如:

ArrayList<String> GrossAmt = new ArrayList<String>();
ArrayList<String> TaxAmt = new ArrayList<String>();
ArrayList<String> DiscAmt = new ArrayList<String>();
ArrayList<String> FinalAmt = new ArrayList<String>();

for (int g = 0; g < GrossAmt.size(); g++) {
    double Expected = 0;
    Expected = Double.valueOf(GrossAmt.get(g)) + Double.valueOf(TaxAmt.get(g))
            - Double.valueOf(DiscAmt.get(g));
    double Actual = Double.valueOf(FinalAmt.get(g));
    LogFileControl.logInfo(Actual);
    LogFileControl.logInfo(Expected);

    if (Actual == Expected) {
        LogFileControl.logInfo("Final Amount Passed!");
    } else {
        LogFileControl.logError(("Actual: " + Actual) + " Expected: " + Expected);
    }
}

关于java - 如何在java selenium中对两个数组字符串值求和并存储到另一个数组列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47051947/

相关文章:

java - if 和 else 语句有问题

java - “this”指针未在 Java 程序中初始化

java - HtmlUnit 的 Click( ) 函数不起作用

javascript - Nightwatch 集成测试 : Can't select option from select dropdown in Safari

ruby - 需要用 capybara(ruby) 在某个坐标点点击、按住并移动

java - 如何检查元素是否可见

java - ArrayList 删除方法不起作用?

javascript - 如何有条件地将选定的行从表A复制到表B?

java - Java 中除了多态性还有其他选择吗?

java - 为什么我的程序没有给出预期的输出?