小编典典

为什么使用 params 关键字?

all

我知道这是一个基本问题,但我找不到答案。

为什么要使用它?如果您编写了一个正在使用它的函数或方法,那么当您删除它时,代码仍然可以正常工作,100% 就像没有它一样。例如:

带参数:

static public int addTwoEach(params int[] args)
{
    int sum = 0;
    foreach (var item in args)
        sum += item + 2;
    return sum;
}

没有参数:

static public int addTwoEach(int[] args)
{
    int sum = 0;
    foreach (var item in args)
       sum += item + 2;
    return sum;
}

阅读 97

收藏
2022-03-31

共1个答案

小编典典

params可以这样调用你的方法:

addTwoEach(1, 2, 3, 4, 5);

没有params,你可以’。

此外,在这两种情况下 ,您都可以使用数组作为参数调用该方法:

addTwoEach(new int[] { 1, 2, 3, 4, 5 });

也就是说,params允许您在调用方法时使用快捷方式。

无关,您可以大大缩短您的方法:

public static int addTwoEach(params int[] args)
{
    return args.Sum() + 2 * args.Length;
}
2022-03-31