加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 最有效的Dictionary.ToString()与格式?

发布时间:2020-12-15 06:44:23 所属栏目:百科 来源:网络整理
导读:将Dictionary转换为格式化字符串的最有效方式是什么? 例如.: 我的方法: public string DictToString(Dictionarystring,string items,string format){ format = String.IsNullOrEmpty(format) ? "{0}='{1}' " : format; string itemString = ""; foreach(v
将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(); 
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读