相关疑难解决方法(0)

String.Format与StringBuilder一样高效

假设我在C#中有一个stringbuilder来执行此操作:

StringBuilder sb = new StringBuilder();
string cat = "cat";
sb.Append("the ").Append(cat).(" in the hat");
string s = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

那将是有效的或更高效的:

string cat = "cat";
string s = String.Format("The {0} in the hat", cat);
Run Code Online (Sandbox Code Playgroud)

如果是这样,为什么?

编辑

在一些有趣的答案之后,我意识到我可能应该对我的要求更加清楚.我没有那么多要求连接字符串哪个更快,但是一个字符串注入另一个字符串更快.

在上面两种情况下,我想将一个或多个字符串注入预定义模板字符串的中间.

对困惑感到抱歉

c# vb.net performance stringbuilder string.format

157
推荐指数
7
解决办法
6万
查看次数

下载.NET 4源代码

从昨天开始,我一直在尝试下载.NET 4的源代码(http://referencesource.microsoft.com/netframework.aspx),但它不起作用.

单击IE中的下载链接,FF会刷新页面但下载不会启动.

点击Chrome中的下载链接确实开始下载,但它名为netframework.aspx,没有任何迹象表明下载量有多大.无论如何,尝试使用DAP下载也没有结果.

我在两台不同的机器上尝试了这个,结果相同.我的所有安装(包括Windows)都保持最新.

任何建议或真实的替代品将不胜感激.

.net download

25
推荐指数
2
解决办法
7685
查看次数

在stringbuilder类型上正确使用子字符串

我正在使用子字符串构建一串数据.我想要的数据格式是

[1,2,3,4,5,6,7,8,9,10]
Run Code Online (Sandbox Code Playgroud)

所以我按照以下方式构建它

StringBuilder sb = new StringBuilder();
sb.append("1,");
sb.append("2,");
sb.append("3,");
.
.
.
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是我想,在添加结束之前修剪最终结果].

我可以

sb.ToString();
sb.Substring(0, (sb.Length - 1));
sb += "]";
Run Code Online (Sandbox Code Playgroud)

但是使用+ =效率不高,因为这会创建一个新字符串.有没有更好的方法呢?

c#

0
推荐指数
1
解决办法
595
查看次数

标签 统计

c# ×2

.net ×1

download ×1

performance ×1

string.format ×1

stringbuilder ×1

vb.net ×1