Операции над строками
o присваивание (=);
o проверка на равенство (= =);
o проверка на неравенство (!=);
o обращение по индексу ([ ]);
o сцепление (конкатенация) строк (+).
Несмотря на то, что строки являются ссылочным типом данных, на равенство и неравенство проверяются не ссылки, а значения строк.
Строки равны, если имеют одинаковое количество символов и совпадают посимвольно. Обращаться к отдельному элементу строки по индексу можно только для получения значения, но не для его изменения.
В классе System.String предусмотрено множество методов, полей и свойств, позволяющих выполнять со строками практически любые действия. Основные элементы класса приведены в таблице 8.2.
Таблица 8.2 – Основные элементы класса System.String
Метод | Описание |
Compare | Сравнение двух строк в лексикографическом (алфавитном) порядке. Разные реализации метода позволяют сравнивать строки и подстроки с учетом и без учета регистра и особенностей национального представления дат |
CompareOrdinal | Сравнение двух строк по кодам символов. Разные реализации метода позволяют сравнивать строки и подстроки |
CompareTo | Сравнение текущего экземпляра строки с другой строкой |
Concat | Конкатенация (соединение) строк. Метод допускает сцепление произвольного числа строк |
Copy | Создание копии строки |
Empty | Пустая строка (только для чтения) |
Format | Форматирование в соответствии с заданными спецификаторами формата |
IndexOf,IndexOfAny, LastIndexOf, LastIndexOfAny | Определение индексов первого и последнего вхождения заданной подстроки или любого символа из заданного набора |
Insert | Вставка подстроки в заданную позицию |
Intern, IsInterned | Возвращает ссылку на строку, если такая уже существует. Если строки нет, Intern добавляет строку во внутренний пул, Islntern возвращает nul1 |
Join | Слияние массива строк в единую строку. Между элементами массива вставляются разделители |
Length | Длина строки (количество символов) |
PadLeft,PadRight | Выравнивание строки по левому или правому краю путем вставки нужного числа пробелов в начале или в конце строки |
Remove | Удаление подстроки из заданной позиции |
Продолжение таблицы 8.2
Метод | Описание |
Replace | Замена всех вхождений заданной подстроки или символа новыми подстрокой или символом |
Split | Разделяет строку на элементы, используя заданные разделители. Результаты помещаются в массив строк |
StartWith, EndWith | Возвращает true или false в зависимости от того, начинается или заканчивается строка заданной подстрокой |
Substring | Выделение подстроки, начиная с заданной позиции |
ToCharArray | Преобразование строки в массив символов |
ToLower,ToUpper | Преобразование символов строки к нижнему или верхнему регистру |
Trim,TrimStart,TrimEnd | Удаление пробелов в начале и конце строки или только с одного ее конца (обратные по отношению к методам PadLeft и PadRlght действия) |
Пример обработки строк типа string
using System;
namespace ConsoleApplicationl
{ class Classl
{ static void Main()
{
string s = "прекрасная королева Изольда";
Console.WriteLine( s );
string sub = s.Substring( 3 ).Remove( 12, 2 );
Console.WriteLine( sub );
string[] mas = s.Split(' ');
string joined = string.Join( "! ", mas );
Console.WriteLine( joined );
Console.WriteLine( "Введите строку" );
string x = Console.ReadLine();
Console.WriteLine( "Вы ввели строку " + x );
double a = 12.234;
int b = 29;
Console.WriteLine( " a = {0,6:C} b = {1,2:X}", a, b ); //неявный вызов метода Format
Console.WriteLine( " a = {0,6:0.##} b = {1,5:0.# ' руб. '}",a, b );//пользовательский шаблон
Console.WriteLine("a = {0:F3} b = {1:D3}", a, b); //задание ширины дробной части
} } }
прекрасная королева Изольда
красная корова Изольда
прекрасная! королева! Изольда
Введите строку
не хочу!
Вы ввели строку не хочу!
а = 12,23р. b = 1D
а = 12,23 b = 29 руб.
Дата добавления: 2015-08-21; просмотров: 585;