📅  最后修改于: 2023-12-03 15:41:00.568000             🧑  作者: Mango
在 Java 中,开发者经常需要编写可变参数(variable arguments)的方法。可变参数的特点是允许方法接收任意数量的参数列表,且参数的类型都相同。
Java 中,可变参数是通过 ...
符号来实现的。例如:
public void methodName(String... args) {
// 方法体
}
这里的 args
参数就是一个可变参数,可以传入任意数量的 String
值。
在 C# 中,也有一个类似功能的关键字,叫做 params
。下面做一些详细的介绍。
params
关键字是 C# 语言中的一个特性,用于定义可变参数。
它与 Java 的可变参数非常相似。在 C# 中,使用 params
关键字定义可变参数,语法如下:
public void methodName(params string[] args) {
// 方法体
}
这里的 args
参数就是一个可变参数,可以传入任意数量的 string
值。
使用 params
关键字定义可变参数能够在一定程度上提高方法的灵活性。因为 params
可以接收任意数量的参数,开发者就不必对不同的参数数量编写多个方法了。
例如,有如下代码:
public int Sum(int a, int b) {
return a + b;
}
public int Sum(int a, int b, int c) {
return a + b + c;
}
它包含两个方法,分别实现了两个或三个整数相加的操作。如果要实现四个或五个整数相加的操作,需要再写两个新的方法。
使用 params
关键字,则可以这样实现:
public int Sum(params int[] args) {
int sum = 0;
foreach (int arg in args) {
sum += arg;
}
return sum;
}
这个方法可以接收任意数量的整数参数,并将它们相加。调用该方法时,只需要传入不同数量的参数即可。
int r1 = Sum(1, 2);
int r2 = Sum(1, 2, 3);
int r3 = Sum(1, 2, 3, 4);
int r4 = Sum(1, 2, 3, 4, 5);
使用 params
关键字需要注意以下几点:
params
关键字只能用在参数列表的最后一个参数上。params
参数的方法时,可以直接传入多个参数,也可以传入一个数组。params
参数,必须要明确指明参数的名字。即必须写成这样:methodName(arg1, paramsArg: arg2, arg3)
。更详细的内容请参考官方文档:https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/params。
params
关键字是 C# 中的一个实用特性,可以用于编写接受任意数量参数的方法。使用 params
关键字,可以简化方法的编写,提高方法的灵活性。在使用时,请注意以上注意事项。