Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
344 of 1492 menu
◀ ▶

Индексатор StringBuilder

Индексатор класса StringBuilder по целому номеру позиции возвращает символ типа char или записывает новый символ в буфер на месте. Нумерация с нуля, как у строки. Доступ возможен только к существующим позициям: номер должен быть меньше свойства Length.

Синтаксис

char ch = sb[index]; sb[index] = ch;

Пример

Давайте прочитаем первый символ буфера "abcde":

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); char ch = sb[0]; Console.WriteLine(ch); } }

Результат выполнения кода:

a

Пример

Давайте заменим первый символ на "'z'":

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); sb[0] = 'z'; Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"zbcde"

Пример

Давайте изменим символ в середине буфера "12345":

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("12345"); sb[2] = '0'; Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"12045"

Пример

Давайте пройдём по буферу и соберём строку из прочитанных символов:

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); StringBuilder res = new StringBuilder(); for (int i = 0; i < sb.Length; i++) { res.Append(sb[i]); } Console.WriteLine(res.ToString()); } }

Результат выполнения кода:

"abcde"

Смотрите также

  • свойство Length,
    которое задаёт длину доступного текста
  • метод Replace,
    который заменяет фрагменты в буфере
  • метод Insert,
    который вставляет текст внутрь буфера
  • метод ToString,
    который возвращает строку из буфера
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить