string.contains()vs string.equals()或string == performance

时间:2016-06-02 18:13:45

标签: c# string performance

我从一个长度为45个字符的API返回一个字符串。有一个词对于一个条件是唯一的,不会出现在另一个条件中。

我想知道使用string.contains()的性能是否比将整个字符串与string.equals()或string ==“blah blah”进行比较更快。

我不知道任何这些方法的内部工作方式,但从逻辑上讲,似乎contains()应该更快,因为它可以在找到匹配后停止遍历字符串。这准确吗?顺便说一句,我要检查的单词是字符串中的第一个单词。

1 个答案:

答案 0 :(得分:2)

我同意D Stanley(评论)。您应该使用String.StartsWith()

那就是说,我也不知道每种方法的内在工作,但我可以看到你的逻辑。但是“String.Contains()”仍然可以在处理之前加载整个字符串,在这种情况下,性能差异会非常小。

最后一点,字符串长度只有45个字符,性能差异应该非常小。当我写一个简单的方法来替换字符时发现那是在瞬间眨眼的过程中处理~10kb的文本时,我感到很震惊。所以除非你在你的应用程序中做一些其他明智的处理,否则它应该没那么重要。

相关问题