Обновление Оказывается, вы используете .net 3.5 и Clear
был добавлен в .net 4. Поэтому вам следует использовать Length = 0
.На самом деле, я бы, вероятно, добавил для этого метод расширения с именем Clear
, так как, на мой взгляд, он гораздо более читабелен, чем Length = 0
.
. Я бы не использовал ни один из них и вместо этого вызвал быClear
.
Clear
- это удобный метод, который эквивалентен установке для свойства Length текущего экземпляра значения 0 (ноль).
Я не могу представить, что это медленнее, чем любой из ваших вариантов, и я также не могу представить, что очистка экземпляра StringBuilder
может стать узким местом.Если где-то есть узкое место, это будет в добавляемом коде.
Если выполнение очистки объекта на самом деле является узким местом, тогда вам потребуется время, чтобы код знал, какой вариант быстрее.При оценке производительности никогда не существует реальной альтернативы бенчмаркингу.