相关疑难解决方法(0)

String vs. StringBuilder

我理解StringStringBuilder(StringBuilder可变)之间的区别,但两者之间是否有很大的性能差异?

我正在研究的程序有很多案例驱动的字符串附加(500+).使用StringBuilder更好的选择?

.net c# performance

208
推荐指数
9
解决办法
20万
查看次数

如何在c#中的字符串中的索引处设置字符?

someString[someRandomIdx] = 'g';
Run Code Online (Sandbox Code Playgroud)

这会给我一个错误,

我该如何实现上述目标?

编辑:

是的它是'string'类型

c#

23
推荐指数
3
解决办法
3万
查看次数

String.Format vs"string"+"string"还是StringBuilder?

可能的重复:
String.Format和StringBuilder一样高效
C#字符串输出:格式还是concat?

什么是性能优先级以及优先选择以下各项的条件:

String.Format("{0}, {1}", city, state);
Run Code Online (Sandbox Code Playgroud)

要么

city + ", " + state;
Run Code Online (Sandbox Code Playgroud)

要么

StringBuilder sb = new StringBuilder();
sb.Append(city);
sb.Append(", ");
sb.Append(state);
sb.ToString();
Run Code Online (Sandbox Code Playgroud)

.net performance stringbuilder string.format string-concatenation

17
推荐指数
1
解决办法
2万
查看次数

带有"+"的字符串格式和构造字符串

我想问一下人们对于编写字符串的想法,以及构建字符串时性能是否存在巨大差异.

近年来我一直被告知永远不要做以下事情:

string dogName = "Ralph";
DateTime bornDate = DateTime.Parse("2010-01-01");

string fullText = "I am a Dog and my name is " + dogName + " and i was born on the " + bornDate.ToString("dd/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)

并总是告诉类似下面的东西.

string dogName = "Ralph";
DateTime bornDate = DateTime.Parse("2010-01-01");

string fullText2 = String.Format("I am a Dog and my name is {0} and i was born on the {1:dd/MM/yyyy}", dogName, bornDate);
Run Code Online (Sandbox Code Playgroud)

我看到使用后面的语句的原因,但是有没有人知道第一个有什么类型的性能问题.

并使用StringBuilder对象而不是使用

string str = "Adding this comment to the string\n"
str += "Then Add …
Run Code Online (Sandbox Code Playgroud)

c# string stringbuilder

10
推荐指数
2
解决办法
2万
查看次数

Java中的格式化打印

我有这个代码:

public String toString(Day day)
{
    String s = day.getDayName() + "    " + day.toString();
    return s;
}
Run Code Online (Sandbox Code Playgroud)

这是Day类的toString方法:

public String toString()
{
    String s = "";
    for (Slot slot: slots)
        s += slot.toString();
    return s;
}
Run Code Online (Sandbox Code Playgroud)

当一遍又一遍地调用它时会打印:

barbi
 monday    10: X 11:   12:   2:   3:   4:
 tuesday    10:   11:   12:   2:   3:   4: X
 wednesday    10:   11:   12:   2:   3:   4:
 thursday    10:   11:   12:   2:   3:   4:
 friday    10:   11:   12:   2:   3:   4:
    bobbi
 monday    10:   11: …

java printing formatted

5
推荐指数
1
解决办法
8745
查看次数

哪个字符串比StringBuilder更有用?

已经有很多关于字符串和字符串构建器之间差异的问题,大多数人都认为字符串构建器比字符串更快.我很想知道字符串构建器是否太好所以为什么字符串存在?此外,有些正文可以给我一个例子,其中字符串比字符串构建器更有用吗?

c# string stringbuilder heuristics

5
推荐指数
3
解决办法
1057
查看次数

1
推荐指数
2
解决办法
2万
查看次数

提高C#中大型SQL表的处理速度

我有C#代码执行此操作:

// This returns 10,000 rows quite quickly, but displaying them below is slow
DataTable dt = GetUsageStats();

string html = "<table>";

// This part is really slow
foreach (DataRow dr in dt.Rows)
{
   html += "<tr>";
   html += "<td>" + dr["column1"].ToString() + "</td>";
   html += "<td>" + dr["column2"].ToString() + "</td>";
   ...
   html += "<td>" + dr["column5"].ToString() + "</td>";
   html += "</tr>"; 
}

html += "</table>";
Run Code Online (Sandbox Code Playgroud)

由于10,000个左右的记录,foreach变得如此缓慢.有没有任何机制来加快这个过程?

谢谢!

.net c# sql performance .net-3.5

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

字符串构建器据说是不可变的?这在C#.NET中意味着什么?

我最近被问到这个问题:String和StringBuilders之间有什么区别?

我知道我已经在某处读过StringBuilders是不可变的,但是不可变的是什么以及StringBuilder上的操作如何变得比String更快,我没有意识到.

请任何人帮我理解这个吗?

stringbuilder

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