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

C#中如何将空格分隔的数字字符串转整数并求和?

解决空格分隔数字字符串求和的问题

你的代码报错是因为int.Parse()无法解析1+3+4+1+1这种包含运算符的字符串,它只能处理纯数字格式的字符串。下面是两种可行的解决方式:

方法1:使用LINQ快速求和

通过拆分字符串、转换为整数后直接求和,代码简洁高效:

using System;
using System.Linq;

public class Program
{
    public static void Main()
    {
        string input2 = "1 3 4 1 1";
        int sum = input2.Split(' ', StringSplitOptions.RemoveEmptyEntries)
                        .Select(int.Parse)
                        .Sum();
        
        Console.WriteLine(sum);
    }
}
  • Split(' ', StringSplitOptions.RemoveEmptyEntries):按空格拆分字符串,同时过滤掉可能存在的空字符串(比如连续空格的情况)
  • Select(int.Parse):将每个拆分后的字符串转换为整数
  • Sum():对所有整数求和

方法2:使用循环手动求和(带错误处理)

如果需要处理可能的非数字输入,或者更直观的逻辑,用循环遍历并累加:

using System;

public class Program
{
    public static void Main()
    {
        string input2 = "1 3 4 1 1";
        string[] numParts = input2.Split(' ', StringSplitOptions.RemoveEmptyEntries);
        int sum = 0;
        
        foreach (string part in numParts)
        {
            // 使用int.TryParse避免非数字输入导致程序崩溃
            if (int.TryParse(part, out int number))
            {
                sum += number;
            }
            else
            {
                // 可选:处理非数字的情况,比如打印错误提示
                Console.WriteLine($"无法解析:{part}");
            }
        }
        
        Console.WriteLine(sum);
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 08:55:37