Проверка, нет ли строки в C#

В этом примере используются три строки для сравнения разных методов для определения, является ли строка пустой. Один из методов: метод string класса IsNullOrWhiteSpace работает только в .NET Framework 4.5 или новее, поэтому этот пример предназначен для этой версии Framework и использует Visual Studio 2013. (Visual Studio 2012 также может настраивать таргетинг на эту версию Framework, но я ее не установил прямо сейчас.)

Программа использует следующий код для инициализации трех строк.

Для введенного количества испытаний и для каждого метода код проверяет string1 и string2, чтобы увидеть, что пусто. Программа проверяет обе строки в случае, если есть разница в пустых строках тестирования производительности и непустых строках.

Следующий код показывает тесты, выполняемые программой.

Если вы посмотрите внимательно на изображение, вы увидите, что тестирование свойства Length строки и IsNullOrEmpty являются самыми быстрыми. Используя ==, чтобы сравнить строку с string.Empty и "", потребовалось немного больше времени. Метод IsNullOrWhitespace занял больше времени. Удивительно, что метод CompareTo занял более 25 раз!

Имейте в виду, что тесты проводились огромное количество раз (100 миллионов раз в этом тесте), поэтому общее количество используемого времени крошечное. Метод CompareTo медленный и не все читаемый, поэтому вы, вероятно, не должны его использовать. Метод IsNullOrEmpty немного читаем.

Источник: http://csharphelper.com/blog/2017/09/efficiently-see-if-a-string-is-blank-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *