params 关键字可以指定在参数数目可变处采用参数的方法参数。在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。示例
// cs_params.cs
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((object)list[i]);
      Console.WriteLine();
   }   public static void Main() 
   {
      UseParams(1, 2, 3);
      UseParams2(1, 'a', "test");       int[] myarray = new int[3] {10,11,12};
      UseParams(myarray);
   }
}
输出
1
2
31
a
test10
11
12

解决方案 »

  1.   

    我感觉object[] list不就可以了吗,为什么还要params object[] list有什么区别吗?
      

  2.   

    关键字可以指定在参数数目可变处采用参数的方法参数在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。如 void test(params string[] a)可以 test()
    也可以 test("a", "b", "c")
      

  3.   

    我知道,但是不用params也可以采用参数的方法参数,我是问加params的必要性,哪种情况要加,哪种情况不要加.
      

  4.   

    如果说一个方法, 它可能需要传一个参数,或两个参数,三个参数,或都一百个Console.WriteLine参数里面就是一个 params 关健字,使得参数个数可以为任意个