我有一個自定義WriteLine(string)
方法的對象。事情是這樣的:如何在我自己的方法中模仿string.Format()?
public void WriteLine(string text)
{
this.StringList.Add(text);
}
這有什麼方法來複制的string.Format()
功能最簡單的方法?例如:我現在經常發現自己做的事情是這樣的:
myObj.WriteLine(string.Format("Hello, {0}", name));
如果您創建一個新的控制檯應用程序的一個WriteLine()
方法的版本不正是我寧願做:
Console.WriteLine("Hello, {0}", name);
他們無需致電string.Format()
。以某種方式讓你的方法接受這件事很容易嗎?或者我將不得不創建一千個方法重載?類似這樣的:
public void WriteLine() { ... }
public void WriteLine(string text) { ... }
public void WriteLine(string text, object arg0) { ... }
public void WriteLine(string text, object arg0, object arg1) { ... }
public void WriteLine(string text, object arg0, object arg1, object arg2)
{
this.StringList.Add(string.Format(text, arg0, arg1, arg2));
}
// etc etc etc
這是唯一合乎邏輯的方法嗎?歡迎任何建議:)
爲什麼不只是委託給'string.Format'?你真的想寫一個標記器嗎? – Oded
C#有一個你不瞭解的特性,你需要知道的。 http://msdn.microsoft.com/en-us/library/w5zay9db(v=VS.100).aspx –
@Oded這是我的問題......我不知道'params'關鍵字,並不知道我甚至***可以***委託給'string.Format'。 – Chev