将Dictionary转换为格式化字符串的最有效方式是什么?
例如.:
我的方法:
public string DictToString(Dictionary<string,string> items,string format){ format = String.IsNullOrEmpty(format) ? "{0}='{1}' " : format; string itemString = ""; foreach(var item in items){ itemString = itemString + String.Format(format,item.Key,item.Value); } return itemString; }
有更好/更简洁/更有效的方式吗?
注意:Dictionary将包含最多10个项目,如果存在另一个类似的“键值对”对象类型,则我不会使用它
另外,由于我正在返回字符串,通用版本会是什么样的?
解决方法
我只是重写你的版本是更通用和使用StringBuilder:
public string DictToString<T,V>(IEnumerable<KeyValuePair<T,V>> items,string format) { format = String.IsNullOrEmpty(format) ? "{0}='{1}' " : format; StringBuilder itemString = new StringBuilder(); foreach(var item in items) itemString.AppendFormat(format,item.Value); return itemString.ToString(); }