В C # возможно объединение строк несколькими способами:
Использование оператора объединения:
var newString = "The answer is '" + value + "'.";
Использование String.Format
:
var newString = String.Format("The answer is '{0}'.", value);
Использование String.Concat
:
var newString = String.Concat("The answer is '", value, "'.");
Каковы преимущества / недостатки каждого из этих методов? Когда я должен предпочесть одно другому?
Вопрос возникает из-за споров между разработчиками. Один никогда не использует String.Format
для конкатенации - он утверждает, что это делается для форматирования строк, а не для конкатенации, и это всегда нечитаемо, потому что элементы в строке выражаются в неправильный порядок. Другой часто использует String.Format
для конкатенации, потому что он думает, что это облегчает чтение кода, особенно когда задействовано несколько наборов кавычек. Оба эти разработчика также используют оператор конкатенации и String.Builder.