Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kompyuternye_tekhnologii_C.doc
Скачиваний:
8
Добавлен:
01.02.2015
Размер:
368.64 Кб
Скачать

8.Строки

В программах строки играют важную роль. В строках формируется понятная

пользователю текстовая информация. Строки содержат шаблоны форматирования

результатов вычислений. Выводом строк можно манипулировать и направлять его на

различные устройства: на экран, на принтер, записывать в файлы. Со строками

выполняют следующие операции: клонирование, объединение/вставка, усечение/удаление, извлечение подстроки, изменение регистра символов, поиск подстроки и т.д.

Переменная, ссылающаяся на экземпляр строки, может изменяться,

присваивая ссылку на новый объект. Сам экземпляр строки меняться не может

(правило постоянства строк). Операции, манипулирующие строками, создают новые строковые объекты и возвращают ссылки на них.

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

Наиболее часто используемые методы класса string:

Clone– возвращает ссылку на данный экземпляр.

Compare – сравнивает две строки, возвращает отрицательное значение, если

первая строка меньше второй, положительное, если больше и ноль, если строки

равны. В дополнительных параметрах можно указать режим сравнения (см. справку).

Concat – объединяет строки.

Contains– возвращает true, если строка содержит указанную подстроку.

Copy – создаѐт новый экземпляр строки с копией содержимого.

EndsWith – возвращает true, если указанная подстрока совпадает с концом

строки.

Equals – возвращает true, если строки равны.

Format – заменяет один или более элементов формата в указанной строке

строковым представлением соответствующего объекта. Формат задаѐтся аналогично

строке формата оператора WriteLine, что рассматривалось ранее.

IndexOf – выполняет поиск подстроки с указанной позиции и возвращает первый

индекс вхождения.

Insert – вставляет одну строку в другую по указанному смещению.

LastIndexOf – возвращает индекс последнего вхождения подстроки в строке.

PadLeft, PadRight– возвращают новую строку, в которой знаки данного

экземпляра выровнены по правому (левому) краю путем добавления слева (справа)

пробелов или указанного знака Юникода до указанной общей длины.

Remove – удаляет подстроку из строки.

Replace – заменяет все вхождения подстроки в строке на указанное значение.

Split – возвращает строковый массив, содержащий подстроки данной строки,

разделенные указанными символами.

StartsWith – возвращает true, если указанная подстрока совпадает с началом

текущей строки.

Substring – извлекает подстроку.

ToCharArray– копирует строку в символьный массив.

ToLower – возвращает копию строки с переведенными в нижний регистр

символами.

ToUpper – возвращает копию строки с переведенными в верхний регистр

символами.

Trim– удаляет начальные и конечные пробелы или другие указанные символы в строке.

TrimEnd, TrimStart – удаляет все конечные (начальные) вхождения набора

знаков, заданного в виде массива, из текущей строки.

Есть возможность создать строку, которую можно использовать для вывода в форму, файл и др.

using System;

class Exs

{

static string SH(DateTime d)

{

int h = d.Hour % 10;

if (h > 4 || h == 0) return "часов";

else if (h == 1) return "час";

else return "часа";

}

static string SM(DateTime d)

{

int m = d.Minute % 10;

if (m > 4 || m == 0) return "минут";

else if (m == 1) return "минута";

else return "минуты";

}

static void Main()

{

string format = "Текущее время: {0:HH} {1} {0:mm} {2}";

var d1 = DateTime.Now;

string s1 = String.Format(format, d1, SH(d1), SM(d1));

Console.WriteLine(s1);

}

}

С помощью шаблона представления в программе создаётся строка s1, в которую с помощью строки формата вводится значение текущего времени с учётом склонения слов, вычисляемого в отдельных методах.