매개 변수 키워드 사용량을 콘솔에 쓰는 것과 유사하게 만드는 방법

StackOverflow https://stackoverflow.com/questions/1651092

  •  22-07-2019
  •  | 
  •  

문제

내 마지막 질문과 관련하여 (변수 그룹을 배열로 전달하는 더 쉬운 방법이 있습니까?)

나는 문자열 변수를 각 개별 방법에서 쓰기를하는 대신 스트림에 쓰는 메소드에 전달하려고했습니다.

Params 키워드를 사용하는 것은 분명히 솔루션이지만, 그것을 사용함으로써 나는 다음과 같은 일을 할 수 없다고 생각합니다.

Write("hello {0}",var1);

코드가 상당히 지저분하게 만듭니다. 이 기능을 내 자신의 방법으로 강요 할 수있는 방법이 있습니까?

도움이 되었습니까?

해결책

void MyMethod(string format, params object[] obj) {
    var formattedString = String.Format(format, obj);
    // do something with it...
}

다른 팁

방법이있는 방법 params 키워드는 명시 적 배열 또는 인라인 배열을 전달할 수 있습니다.

따라서 다음을 작성할 수 있습니다.

public static void Write(params string[] stringsToWrite) {
    //...
    writer.WriteLine("Hello {0} {1} {2}", stringsToWrite);
    //...
}

편집하다 귀하의 질문은 불분명합니다. 당신이 a params 배열 매개 변수는 하나의 값 만 주어질 수 있으며 답은 예입니다.

예를 들어:

Write("myString");

많은 이유 params .NET의 메소드에는 하나의 매개 변수 만 취하는 별도의 오버로드가 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top