Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
40.doc
Скачиваний:
14
Добавлен:
30.04.2022
Размер:
646.66 Кб
Скачать

9.2. Строки

Строчный тип (System.String) определяет и поддерживает символьные строки. В С# строки являются объектами. Следовательно, тип string относится к числу ссылочных.

Самый простой способ построить символьную строку — воспользоваться строковым литералом. Например, в следующей строке кода переменной ссылки на строку str присваивается ссылка на строковый литерал.

string str = "Строки в С# весьма эффективны.";

В данном случае переменная str инициализируется последовательностью символов "Строки в С# весьма эффективны."

Объект типа string можно также создать из массива типа char. Например:

char[] charray = {'t', 'е', 's', 't'} ;

string str = new string(charray);

Как только объект типа string будет создан, его можно использовать везде, где только требуется строка текста, заключенного в кавычки.

В System. String предоставляется набор методов для определения длины символьных данных, поиска подстроки в текущей строке, преобразования символов из верхнего регистра в нижний и наоборот, и т.д. В табл. 4 перечислены некоторые наиболее интересные члены этого класса.

Таблица 4

Некоторые члены класса System.String

Член

Описание

Length

Свойство, которое возвращает длину текущей строки

Compare()

Статический метод, который позволяет сравнить две строки

Contains()

Метод, который позволяет определить, содержится ли в строке определенная подстрока

Equals()

Метод, который позволяет проверить, содержатся ли в двух строковых объектах идентичные символьные данные

Insert()

Метод, который позволяет вставить строку внутрь другой определенной строки

PadLeft()

Методы, которые позволяют дополнить строку какими-то символами, соответственно, справа или слева

PadRight()

Remove()

Методы, которые позволяют получить копию строки с соответствующими изменениями (удалением или заменой символов)

Replace()

Split()

Метод, возвращающий массив string с присутствующими в данном экземпляре подстроками внутри, которые отделяются друг от друга элементами из указанного массива char или string

Trim()

Метод, который позволяет удалять все вхождения определенного набора символов с начала и конца текущей строки

ToUpper()

Методы, которые позволяют создавать копию текущей строки в формате, соответственно, верхнего или нижнего регистра

ToLower()

Переменные string могут сцепляться вместе для создания строк большего размера с помощью такой поддерживаемой в С# операции, как +. Как известно, подобный прием называется конкатенацией строк.

Как и в других языках на базе С, в С# строковые литералы могут содержать различные управляющие последовательности символов (escape characters), которые позволяют уточнять то, как символьные данные должны выводиться в выходном потоке. Начинается каждая такая управляющая последовательность с символа обратной косой черты, за которым следует интерпретируемый знак:

\' - вставляет в строковый литерал символ одинарной кавычки;

\" - вставляет в строковый литерал символ двойной кавычки;

\\ - вставляет в строковый литерал символ обратной косой черты. Может быть полезной при определении путей к файлам и сетевым ресурсам;

\a - заставляет систему выдавать звуковой сигнал, который в консольных приложениях может служить своего рода звуковой подсказкой пользователю;

\n - вставляет символ новой строки;

\r - вставляет символ возврата каретки;

\t - вставляет в строковый литерал символ горизонтальной табуляции.

За счет добавления к строковому литералу префикса @ можно создавать так называемые дословные строки (verabtim string). Дословные строки позволяют отключать обработку управляющих последовательностей в литералах и выводить объекты string в том виде, в каком они есть. Эта возможность наиболее полезна при работе со строками, представляющими пути к каталогам и сетевым ресурсам. Таким образом, вместо использования управляющей последовательности \\ можно написать следующий код:

Console.WriteLine(@"C:\MyApp\bin\Debug");

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]