メソッドの引数が配列の場合、paramsキーワードを付加できます。これで要素を列挙するだけで配列を渡せるので、呼び出し側は少しだけ楽ができます。
private static void Hoge(string[] foo) { } private static void Fuga(params string[] foo) { } static void Main(string[] args) { Hoge(new string[] { "foo1", "foo2" }); // 配列インスタンス生成が必要。 Fuga("foo1", "foo2"); // 要素の列挙だけで呼び出せる。 }
残念ながらBCLではこの点が徹底されていません。例えば、System.IO.Path.Combine。.NET3.5まではparams指定がありませんでした。.NET4でようやくparams指定ありのオーバーロードが追加されています。
Path.Combine メソッド (String[]) (System.IO)
文字列の配列を 1 つのパスに結合します。