Основы языка C# 2005. Евсеева О.Н - 124 стр.

UptoLike

Составители: 

128
8.4.1. Объявление строк. Конструкторы класса StringBuilder
Объекты этого класса объявляются с явным вызовом конструктора
класса. Поскольку специальных констант этого типа не существует, то вызов
конструктора для инициализации объекта просто необходим. Конструктор
класса перегружен, и наряду с конструктором без параметров, создающим
пустую строку, имеется набор конструкторов, которым можно передать две
группы параметров. Первая группа позволяет задать строку или подстроку,
значением которой будет инициализироваться создаваемый объект класса
StringBuilder. Вторая группа параметров позволяет задать емкость объекта
объем памяти, отводимой данному экземпляру класса StringBuilder. Каждая из
этих групп не является обязательной и может быть опущена. Примером может
служить конструктор без параметров, который создает объект,
инициализированный пустой строкой, и с некоторой емкостью, заданной по
умолчанию, значение которой зависит от реализации. Приведем в качестве
примера синтаксис трех конструкторов.
public StringBuilder (string str, int cap);
Параметр str задает строку инициализации, capемкость объекта.
public StringBuilder (int curcap, int maxcap);
Параметры curcap и maxcap задают начальную и максимальную емкость
объекта.
public StringBuilder (string str, int start, int len, int cap);
Параметры str, start, len задают строку инициализации, capемкость
объекта.
8.4.2. Операции над строками
Над строками этого класса определены практически те же операции с той
же семантикой, что и над строками класса String:
присваивание (=);
две операции проверки эквивалентности (= =) и (!=);
взятие индекса ([]).
Операция конкатенации (+) не определена над строками класса
StringBuilder, ее роль играет метод Append, дописывающий новую строку в
хвост уже существующей.
Со строкой этого класса можно работать как с массивом, но, в отличие от
класса String, здесь уже все делается как надо: допускается не только чтение
отдельного символа, но и его изменение. Рассмотрим с небольшими
модификациями наш старый пример:
public void TestStringBuilder()
{
//Строки класса StringBuilder
//операции над строками