В то время как вопрос проверить, является ли ввод тип строки , был закрыт, два из ответов вызвали у меня вопрос микрооптимизации: какое из следующих двух решений будет работать лучше?
string myString = "RandomStringOfLetters";
bool allLetters = myString.All( c => Char.IsLetter(c) );
string s = "RandomStringOfLetters";
bool allLetters = Regex.IsMatch(s, "^[a-z]+$", RegexOptions.IgnoreCase);
Не желая просто задавать вопрос Риду или Марку, я решил написать быстрый тест, чтобы определить, какие из них лучше.Проблема в том, что я не много занимался оптимизацией кода (я склонен ставить читабельность кода превыше всего).
Кроме того, что нужно делать отметку времени до и после выполнения каждого, что еще есть (лучше?) варианты определения, какое решение работает быстрее?
Редактировать
Я изменил Ответ Мартина для работы с Console.WriteLine(...)
и запустил его как консольприложение.Не уверен, как именно LinqPad запускает приложения, но результаты были примерно одинаковыми:
41
178