簡體   English   中英

如何將兩個數組字符串的值求和並存儲到Java Selenium中的另一個數組列表中?

[英]How to do sum of two array string's value and store into another array list in java selenium?

我有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);

             }

但是我對此有錯誤。

看起來金額是decimal而您正在通過將它們轉換為integer來執行比較。 我建議使用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);
    }
}

嘗試如下操作A和B是兩個不同的ArrayLists

ArrayList AB = new ArrayList();

AB.addAll(A);
AB.addAll(B);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM