【发布时间】:2009-01-31 11:42:36
【问题描述】:
我有一个大约 2000 个字符的字符串缓冲区,需要检查缓冲区是否包含特定字符串。
将为每个 web 请求在 ASP.NET 2.0 webapp 中进行检查。
有谁知道String.Contains method 的性能是否优于String.IndexOf method?
// 2000 characters in s1, search token in s2
string s1 = "Many characters. The quick brown fox jumps over the lazy dog";
string s2 = "fox";
bool b;
b = s1.Contains(s2);
int i;
i = s1.IndexOf(s2);
【问题讨论】:
-
如果您需要为每个 Web 请求执行十亿次,我会开始研究类似的东西。在任何其他情况下,我都不会打扰,因为与最初接收 HTTP 请求相比,在这两种方法中花费的时间很可能微不足道。
-
优化的关键之一是测试而不是假设,因为它可能取决于很多因素,例如 .NET 版本、操作系统、硬件、输入的变化等。其他人完成的许多案例测试结果在您的系统上可能会非常不同。
标签: c# .net asp.net performance string