매개 변수 키워드 사용량을 콘솔에 쓰는 것과 유사하게 만드는 방법
문제
내 마지막 질문과 관련하여 (변수 그룹을 배열로 전달하는 더 쉬운 방법이 있습니까?)
나는 문자열 변수를 각 개별 방법에서 쓰기를하는 대신 스트림에 쓰는 메소드에 전달하려고했습니다.
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의 메소드에는 하나의 매개 변수 만 취하는 별도의 오버로드가 있습니다.
제휴하지 않습니다 StackOverflow