由网友(我是行星饭我骄傲*)分享简介:我将如何转换键值对的字典为一个字符串?你能做到这一点使用LINQ聚集?我已经看到了使用字符串列表这样的例子,但没有一本字典。输入: 词典<字符串,字符串>地图=新字典<字符串,字符串> {{A,阿尔法},{B,贝塔},{G,伽玛}};输出: 字符串结果=答:阿尔法,B:测试版,G:伽玛;解决方...
我将如何转换键值对的字典为一个字符串?你能做到这一点使用LINQ聚集?我已经看到了使用字符串列表这样的例子,但没有一本字典。
输入:
词典<字符串,字符串>地图=新字典<字符串,字符串> {
{A,阿尔法},
{B,贝塔},
{G,伽玛}
};
输出:
字符串结果=答:阿尔法,B:测试版,G:伽玛;
解决方案
这是最简洁的方式我能想到的:
VAR的结果=的string.join(,map.Select(M => m.Key +:+ m.Value).ToArray());
不过,根据您的情况,这可能会更快(虽然不是很优雅):
VAR的结果= map.Aggregate(新的StringBuilder()
(A,B)=> a.Append(,).Append(b.Key).Append(:)。追加(b.Value),
(一)=> a.Remove(0,2)的ToString());
在你的三个项目字典和我的笔记本电脑,后者平均39%的速度
我跑上面的每一个不同的迭代次数(10,000,000万张; 1,000,000)。在一个有10个元素的字典,后者快只有约22%。
还有一件事要注意,简单的字符串连接在我的第一个例子是比的
相关推荐
最新文章