gpt4 book ai didi

string - String.Compare 的替代品以提高性能

转载 作者:行者123 更新时间:2023-12-03 16:44:16 26 4
gpt4 key购买 nike

我在我的 C# 应用程序上使用了一个探查器并意识到 String.Compare() 总体上花费了很多时间:总时间的 43% 有 1.24 亿次点击

我比较的是相对较小的字符串:4 到 50 个字符。就性能而言,您建议用什么来代替它?

UPD:我只需要确定 2 个字符串是否相同。字符串可以是零或“”。没有文化方面或任何其他方面。大多数情况下,与“1235E”或类似内容相比,它是“4578D”。

非常感谢!

最佳答案

这取决于你想做什么样的比较。如果您只关心相等性,则使用 Equals 重载之一 - 例如,发现两个字符串的长度不同比比较它们的内容更快。

如果您对序数比较感到满意,请明确指定:

int result = string.CompareOrdinal(x, y);

序数比较可以比文化敏感的比较快。

当然,这假设序数比较会为您提供所需的结果 - 正确性通常比性能更重要(尽管并非总是如此)。

编辑:好的,所以您想测试相等性。我只使用 == 运算符,它使用序号相等比较。

关于string - String.Compare 的替代品以提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6981561/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com