You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java逐行读取文件提取整数如何求和?无法得到总和问题求助

Java代码累加整数总和修改方案

你当前代码的核心问题是没有在循环外声明全局的累加变量,每次循环解析出的数值仅临时存储在单次循环生效的局部变量中,没有做累加操作。按以下逻辑修改即可:

  • 进入while循环前,先初始化一个int类型的总和变量,初始值为0
  • 每次循环解析得到maleBb后,将该值累加到总和变量中
  • 整个文件读取结束后,打印总和变量即可得到最终结果

修改后的完整代码如下:

import java.io.*;
import java.nio.charset.StandardCharsets;

public class babySort {
    public static void main(String[] args) {
        File inputFile = new File("src/babynames.txt");
        // 初始化总和存储变量
        int total = 0;

        try (BufferedReader br = new BufferedReader(new FileReader(inputFile, StandardCharsets.UTF_8))) {
            String input;
            while ((input = br.readLine()) != null) {
                // Java中正则的空白符标识\s需要转义为\\s
                String[] inputSplit = input.split("\\s+");
                int maleBb = Integer.parseInt(inputSplit[2]);
                // 累加当前行数值到总和
                total += maleBb;
            }
            // 读取完所有行后打印最终总和
            System.out.println(total);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

你提供的4个输出数值累加后结果为1503767,和预期输出完全一致。

内容的提问来源于stack exchange,提问作者Dustin McDonnell

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 11:54:01