Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将多个数字传递到使用params修饰符的Add方法中?_C# - Fatal编程技术网

C# 将多个数字传递到使用params修饰符的Add方法中?

C# 将多个数字传递到使用params修饰符的Add方法中?,c#,C#,请参阅以下答案: 关于参数的问题(在一定程度上)。我想知道的是,如何(如果可能的话)使用它来获取用户输入,而不是预定义的数字? 所以,我知道我可以做Console.Write(calculator.Add(1,43,23)),但我想处理用户输入 class Program { static void Main(string[] args) { var calculator = new Calculator(); var input = Conver

请参阅以下答案: 关于参数的问题(在一定程度上)。我想知道的是,如何(如果可能的话)使用它来获取用户输入,而不是预定义的数字? 所以,我知道我可以做Console.Write(calculator.Add(1,43,23)),但我想处理用户输入

class Program
{
    static void Main(string[] args)
    {
        var calculator = new Calculator();
        var input = Convert.ToInt32(Console.ReadLine());

        Console.WriteLine(calculator.Add(input));
    }
}

public class Calculator
{
    public int Add(params int[] numbers)
    {
        var sum = 0;
        foreach (var number in numbers)
        {
            sum += number;
        }
        return sum;
    }
}

沿着这条思路应该会奏效。我可能犯了语法错误:D

使用系统;
班级计划
{
静态void Main(字符串[]参数)
{
var calculator=新计算器();
var输入=GetNumbers();
计算器。添加(输入);
Console.WriteLine(calculator.Add(input));
}
公共静态int[]GetNumbers()
{
Console.WriteLine(“输入用空格分隔的数字”);
string input=Console.ReadLine();//使用此命令获取用户输入
string[]arr=input.Split(“”);//在空格处拆分输入
int[]输出=新int[arr.Length];//在相同长度的数组中创建
for(int i=0;i
您可以将所有用户输入存储在一个数组中,并将该数组传递给
添加

var calculator = new Calculator();
var input = Array.ConvertAll<int>(Console.ReadLine().Split(' '));
calculator.Add(input);
var计算器=新计算器();
var input=Array.ConvertAll(Console.ReadLine().Split(“”));
计算器。添加(输入);

ConvertAll
需要两个参数,因为我知道
输入的变量是什么类型的。谢谢,我来看看这个。知道为什么我的问题被否决了吗?我不明白,这是一个合理的问题。这个网站有时确实让我感到沮丧。如果不是像我这样的人来从中学习,并获得其他知识,它有什么意义呢?只是说,在这篇文章以及OP中,有一行不必要的
计算器。Add(input)控制台.WriteLine(calculator.Add(input))之前的code>。OP可能有兴趣输入一个可重复使用结果的变量。Macro,是的,我应该在发布之前编辑一下代码。我把那条线留下了,因为我正处于变化之中。我来编辑。