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