C#中params关键字的作用理解
用params关键字
是不是可以在实参中任意定义多个值,或者减小值,这是不是跟其他方法参数的不同之处?
请高手说明,最好能举例params的用法.


宁缺毋滥9352014-10-19


params 构造函数声明数组 而不知道数组长度 用的
在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。
using System;

public class MyClass 
 {
 public static void UseParams(params int[] list) 
 {
 for (int i = 0 ; i < list.Length; i++)
 {
 Console.WriteLine(list[i]);
 }
 Console.WriteLine();
 }
 public static void UseParams2(params object[] list) 
 {
 for (int i = 0 ; i < list.Length; i++)
 {
 Console.WriteLine(list[i]);
 }
 Console.WriteLine();
 }
 static void Main() 
 {
 UseParams(1, 2, 3);
 UseParams2(1, 'a', "test"); 
 // An array of objects can also be passed, as long as
 // the array type matches the method being called.
 int[] myarray = new int[3] {10,11,12};
 UseParams(myarray);
 }
 }


输出
1
2
3
1
a
test
10
11
12