Конкатенация строк прекрасна в простом сценарии как этот - это более сложно с чем-либо более сложным, чем это, даже LastName, FirstName. С форматом Вы видите, сразу, чем заключительная структура строки будет при чтении кода с конкатенацией, кроме которой становится почти невозможно сразу различить конечный результат (с очень простым примером как этот).
то, Что это означает в конечном счете, - то, что, когда Вы возвращаетесь для внесения изменения в формат строки, у Вас или будет способность зайти без предупреждения и внести несколько корректировок в строку формата, или сморщить Ваш лоб и начать перемещать все виды средств доступа свойства, смешанных с текстом, который, более вероятно, представит проблемы.
при использовании.NET 3.5 можно использовать дополнительный метод как этот и получить легкое течение, неподготовленный синтаксис как это:
string str = "{0} {1} is my friend. {3}, {2} is my boss.".FormatWith(prop1,prop2,prop3,prop4);
Наконец, когда Ваше приложение растет в сложности, можно решить, что для нормального поддержания строк в приложении Вы хотите переместить их в файл ресурсов для локализации или просто в статического помощника. Этого будет НАМНОГО легче достигнуть, если Вы последовательно использовали форматы, и Ваш код может быть вполне просто пересмотрен для использования чего-то как
string name = String.Format(ApplicationStrings.General.InformalUserNameFormat,this.FirstName,this.LastName);
В основном вы только что описали SortedDictionary
, за исключением двоичного поиска по следующему наименьшему / следующему наибольшему значению, который можно реализовать самостоятельно без особых усилий. сложность.
Есть ли конкретные причины, по которым SortedDictionary
недостаточно для вас?