Java 使用for循环的ArrayList之和

Java 使用for循环的ArrayList之和,java,arrays,csv,arraylist,sum,Java,Arrays,Csv,Arraylist,Sum,如何计算下面ArrayList中特定行的总和。所以我已经看过堆栈溢出,大多数示例的for循环中都有一个double。但是,我使用了字符串数组,因此我不确定如何计算第[9]行的和 try{ //store csv file into arraylist ArrayList<String> searchProducts = new ArrayList<>(); readData = new ArrayList<>

如何计算下面ArrayList中特定行的总和。所以我已经看过堆栈溢出,大多数示例的for循环中都有一个double。但是,我使用了字符串数组,因此我不确定如何计算第[9]行的和

  try{
        //store csv file into arraylist
         ArrayList<String> searchProducts = new ArrayList<>();
        readData = new ArrayList<>();
        CSVReader br = new CSVReader(new FileReader(csvFile));
        readData = br.readAll();


         //skip first value of arraylist
       for(String[] row:readData.subList(1, readData.size()) ) {
      searchProducts.add(row[9]);
        System.out.println("saved: " + row[9]);


    }



    } catch (IOException e) {
        System.out.println("File does not exist");
        e.printStackTrace();
    }
试试看{
//将csv文件存储到arraylist中
ArrayList searchProducts=新的ArrayList();
readData=newarraylist();
CSVReader br=新的CSVReader(新文件读取器(csvFile));
readData=br.readAll();
//跳过arraylist的第一个值
对于(字符串[]行:readData.subList(1,readData.size())){
searchProducts.add(第[9]行);
System.out.println(“保存:“+行[9]);
}
}捕获(IOE异常){
System.out.println(“文件不存在”);
e、 printStackTrace();
}

使用流API很容易:

int sum = searchProducts.stream()
                        .mapToInt(Integer::parseInt)
                        .sum();

如果没有流api

也许您希望修复缩进,以便代码更易于阅读。字符串的总和应该是多少?将它们连接在一起?还有,您尝试过做什么-您提供的代码对
ArrayList
没有任何作用,因为我使用的是字符串数组,parse Int方法对我不起作用。
int sum = 0;
for(String str:searchProducts){
 sum+=Integer.parseInt(str);
}