Initializing a string array in a method call as a parameter in C# Initializing a string array in a method call as a parameter in C# arrays arrays

Initializing a string array in a method call as a parameter in C#


you can do this :

DoSomething(10, new[] {"One", "Two", "Three"});

provided all the objects are of the same type you don't need to specify the type in the array definition


If DoSomething is a function that you can modify, you can use the params keyword to pass in multiple arguments without creating an array. It will also accept arrays correctly, so there's no need to "deconstruct" an existing array.

class x{    public static void foo(params string[] ss)    {        foreach (string s in ss)        {            System.Console.WriteLine(s);        }    }    public static void Main()    {        foo("a", "b", "c");        string[] s = new string[] { "d", "e", "f" };        foo(s);    }}

Output:

$ ./d.exe abcdef


Try this:

DoSomething(10, new string[] {"One", "Two", "Three"});