Use params to mark a parameter
using System;
using System.Collections.Generic;
using System.Text;
class Program {
static int SumVals(params int[] vals) {
int sum = 0;
foreach (int val in vals) {
sum += val;
}
return sum;
}
static void Main(string[] args) {
int sum = SumVals(1, 5, 2, 9, 8);
Console.WriteLine("Summed Values = {0}", sum);
}
}
Variable-Length Parameter Lists
using System;
class MainClass
{
public static void Main()
{
Write("A", "B");
Write("A", "B", "C", 12, 14.2);
object[] arr = new object[4];
arr[0] = "A";
arr[1] = "B";
arr[2] = "C";
arr[3] = 42;
Write("AAA", arr);
}
public static void Write(string label, object arg)
{
WriteString(label);
WriteString(arg.ToString());
}
// version with an array of object parameters
public static void Write(string label, params object[] args)
{
WriteString(label);
foreach (object o in args)
{
WriteString(o.ToString());
}
}
public static void WriteString(string str)
{
// writes string to the port here
Console.WriteLine("Port debug: {0}", str);
}
}
Port debug: A
Port debug: B
Port debug: A
Port debug: B
Port debug: C
Port debug: 12
Port debug: 14.2
Port debug: AAA
Port debug: A
Port debug: B
Port debug: C
Port debug: 42