Mega Code Archive

 
Categories / C# Book / 01 Language Basics
 

0118 Variable length parameter

To declare a method which can accept any number of parameters of a particular type we use the params modifier. The params parameter is declared as an array. using System; class Program { static void output(params int[] intPara) { for (int i = 0; i < intPara.Length; i++) { Console.WriteLine("params:" + intPara[i]); } } static void Main(string[] args) { output(1, 2, 3); output(1, 2, 3, 4, 5, 6); } } The output: params:1 params:2 params:3 params:1 params:2 params:3 params:4 params:5 params:6 You can pass real array for params type parameters. using System; class Program { static void output(params int[] intPara) { for (int i = 0; i < intPara.Length; i++) { Console.WriteLine("params:" + intPara[i]); } } static void Main(string[] args) { output(new int[] { 1, 2, 3 }); } } The output: params:1 params:2 params:3 The params type parameter must be the last parameter in that method. using System; class Program { static void output(int j, params int[] intPara) { Console.WriteLine("j:" + j); for (int i = 0; i < intPara.Length; i++) { Console.WriteLine("params:" + intPara[i]); } } static void Main(string[] args) { output(999, new int[] { 1, 2, 3 }); } } The output: j:999 params:1 params:2 params:3