C# 如何编写一个接受int参数并将它们组合输出的函数?例:1,2,3,4->;1234

C# 如何编写一个接受int参数并将它们组合输出的函数?例:1,2,3,4->;1234,c#,function,C#,Function,我正在学习如何用C语言编写代码。对于家庭作业,我们被要求编写一个方法,该方法接受8个不同的int值,并返回另一个int值和所有值的组合(1、2、3、4)变为1234。然后,该方法将输出返回到Main函数,以便使用Console.WriteLine进行打印。我只是对我应该做什么感到困惑,因为当方法是int时,我不能返回字符串,将所有int相加就是将所有数字相加 方法: static int CombineNumbers(int a, int b, int c, int d, int e, int

我正在学习如何用C语言编写代码。对于家庭作业,我们被要求编写一个方法,该方法接受8个不同的
int
值,并返回另一个
int
值和所有值的组合<例如,代码>(1、2、3、4)变为
1234
。然后,该方法将输出返回到
Main
函数,以便使用
Console.WriteLine
进行打印。我只是对我应该做什么感到困惑,因为当方法是
int
时,我不能返回字符串,将所有
int
相加就是将所有数字相加

方法:

static int CombineNumbers(int a, int b, int c, int d, int e, int f, int g, int h) {
  return();
}
应该从
Main
读取int值:

Console.WriteLine(CombineNumbers(1, 2, 3, 4, 5, 6, 7, 8));

必须将数字串接为字符串,然后再次将字符串转换为整数:

public class Program
{
    public static void Main()
    {
        Console.WriteLine(CombineNumbers(1, 2, 3, 4, 5, 6, 7, 8));
    }

    static int CombineNumbers(int a, int b, int c, int d, int e, int f, int g, int h) {
        String resultString = a.ToString() + b.ToString() + c.ToString() + d.ToString() + e.ToString() + f.ToString() + g.ToString() + h.ToString();
        int result = Convert.ToInt32(resultString);
        return result;
    }
}

此功能可以帮助您,您可以轻松增加参数的数量

public class Program
{
        public static void Main()
        {
          Console.WriteLine(MyFunc(1, 2, 3, 4));
        }


        private int MyFunc(int a, int b, int c, int d)
        {
            var str = new List<int>() { a, b, c, d};

           return str.Aggregate((x, y) => int.Parse(x.ToString() + y.ToString()));
        }
}
公共类程序
{
公共静态void Main()
{
Console.WriteLine(MyFunc(1,2,3,4));
}
私有int MyFunc(int a,int b,int c,int d)
{
var str=new List(){a,b,c,d};
返回str.Aggregate((x,y)=>int.Parse(x.ToString()+y.ToString());
}
}

我建议使用
Join
params

创建一个方法,以获取int数组的
参数(这样您就不必限制参数的特定大小),然后加入它。如果只想返回作为字符串连接在一起的数字,请执行以下操作:

public static string CombineNumbers1(params int[] arr)
{
    return string.Join("", arr);
}
若要返回整数类型的数字,可以按如下方式进行转换或分析:

public static int CombineNumbers2(params int[] arr)
{
    int.TryParse(string.Join("", arr), out int val);
    return val;
}
因此,当我将以下内容传递给方法时:

组合器1(1、2、3、4、5、6、7、8)

它应该会回来


12345678在第一个方法中为字符串,在第二个方法中为整数。

1。使用
ToString()
2将所有数值转换为
string
。连接所有
字符串
值以创建单个
字符串
3。使用
Int32.TryParse()
将单个
string
转换回
int
,或使用
string output=$“{a}{b}{c}{d}”