При объявлении строкового литерала автоматически создается строковый объект. Поэтому для инициализации строкового объекта зачастую оказывается достаточно присвоить ему строковый литерал, как показано ниже.
string str = "новая строка";
Поле, индексатор и свойство класса String
В классе
Stringопределено единственное поле.public static readonly string Empty
Поле
Emptyобозначает пустую строку, т.е. такую строку, которая не содержит символы. Этим оно отличается от пустой ссылки типаString,которая просто делается на несуществующий объект.Помимо этого, в классе
Stringопределен единственный индексатор, доступный только для чтения.public char this[int
Этот индексатор позволяет получить символ по указанному индексу. Индексация строк, как и массивов, начинается с нуля. Объекты типа
Stringотличаются постоянством и не изменяются, поэтому вполне логично, что в классеStringподдерживается индексатор, доступный только для чтения.И наконец, в классе
Stringопределено единственное свойство, доступное только для чтения.public int Length { get; }
Свойство
Lengthвозвращает количество символов в строке.Операторы класса String
В классе
Stringперегружаются два следующих оператора: == и ! =. Оператор == служит для* проверки двух символьных строк на равенство. Когда оператор == применяется к ссылкам на объекты, он обычно проверяет, делаются ли обе ссылки на один и тот же объект. А когда оператор == применяется к ссылкам на объекты типаString,то на предмет равенства сравнивается содержимое самих строк. Это же относится и к оператору!=. Когда он применяется к ссылкам на объекты типаString,то на предмет неравенства сравнивается содержимое самих строк. В то же время другие операторы отношения, в том числе < и >=, сравнивают ссылки на объекты типаStringтаким же образом, как и на объекты других типов. А для того чтобы проверить, является ли одна строка больше другой, следует вызвать методCompare(), определенный в классеString.Как станет ясно дальше, во многих видах сравнения символьных строк используются сведения о культурной среде. Но это не относится к операторам = = и ! =. Ведь они просто сравнивают порядковые значения символов в строках. (Иными словами, они сравнивают двоичные значения символов, не видоизмененные нормами культурной среды, т.е. региональными стандартами.) Следовательно, эти операторы выполняют сравнение строк без учета регистра и настроек культурной среды.
Сравнение строк