我在C#中Dictionary<int, string>
,我需要一种方法来创建它的内容与格式"key1-value1, key2-value2"
一个字符串,等等的toString字典C#
我是新来的C#,所以我创建了以下函数的实现这个目标:
private string buildString(Dictionary<int, string> info)
{
string result = "";
int i = 1;
foreach (KeyValuePair<int, string> pair in info)
{
if (i < info.Count)
{
result += pair.Key + "-" + pair.Value + ",";
}
else
{
result += pair.Key + "-" + pair.Value;
}
i++;
}
return result;
}
但是,这个功能是无效的和冗长的。我知道C#有String.format
,但我不确定是否以及如何使用它。
是否有更好的方式以更高效和更简洁的方式实现相同的输出?如果是这样如何?
你不应该使用'string'。相反,使用['System.Text.StringBuilder'](http://msdn.microsoft.com/library/en-us/system.text.stringbuilder)。 – ikh 2014-12-02 12:06:44
当你使用foreach循环时,你使用的计数器(i)是不必要的。 foreach循环将查看集合中的所有项目然后停止,因此不需要计数器。 – 2014-12-02 12:07:07
@DavidWatts在这段代码中,'i'不是用来停止的。在'info'的最后一个元素上,他不想追加','字符。 – ikh 2014-12-02 12:08:37