Search code examples
c#parameters

C# params with at least one value


How can I have a parameter of params with at least one value?

public void Foo(params string[] s) { }

public void main()
{
    this.Foo(); // compile error
    this.Foo(new string[0]); // compile error
    this.Foo({ }); // compile error
    this.Foo("foo"); // no error
    this.Foo("foo1", "foo2"); // no error
}

Solution

  • Just do:

    public void Foo(string first, params string[] s) { }