Язык программирования C#
- Муслимова А. Г.
- Уроки по языку программирования С#
- Просмотров: 27533
Язык С#. Символы и строки
В C# существуют два вида строковых констант (литерал):
- обычные константы - строка символов, заключенная в кавычки string str= “d:\\СП21\\С#”;
- @-константа - константа c предшествующим знаком @ string str= @ “d:\СП21\С#”;
В @-константах все символы трактуются в соответствии с их изображением, поэтому путь к файлу лучше задавать @-константой.
Класс Char
Char – символы в кодировке Unicode - хранятся в двух байтах
Методы класса Char
GetNumericValue |
Возвращает числовое значение символа, если он является цифрой, и -1 в противном случае. |
GetUnicodeCategory |
Возвращает категорию Unicode-символа. В Unicode символы разделены на категории, например цифры (DecimalDigitNumber), римские цифры (LetterNumber), разделители строк (LineSeparator), буквы в нижнем регистре (LowercaseLetter) и т.д. |
IsControl |
Возвращает true, если символ является управляющим. |
IsDigit |
Возвращает true, если символ является десятичной цифрой. |
IsLetter |
Возвращает true, если символ является буквой. |
IsLetterOrDigit |
Возвращает true, если символ является буквой или десятичной цифрой. |
IsLower |
Возвращает true, если символ задан в нижнем регистре. |
IsNumber |
Возвращает true, если символ является числом (десятичным или шестнадцатеричным). |
IsPunctuation |
Возвращает true, если символ является знаком препинания. |
IsSeparator |
Возвращает true, если символ является разделителем. |
IsUpper |
Возвращает true, если символ задан в верхнем регистре. |
IsWhiteSpace |
Возвращает true, если символ является пробельным (пробел, перевод строки, возврат каретки). |
Parse |
Преобразует строку в символ (строка должна состоять из одного символа). |
ToLower |
Преобразует символ в нижний регистр |
ToUpper |
Преобразует символ в верхний регистр |
Массив символов char []
В языке C# массив char [] - обычный массив:
- не имеет завершающего нуля,
- его нельзя инициализировать строкой символов
char[ ] mch = { 'М', 'а', 'й', 'к', 'о', 'п' };
Преобразование строки в массив символов:
string hello = "Hello, World!";
char[ ] str = hello.ToCharArray();
Класс String
- В классе String невозможно изменить содержимое строки или ее длину.
- При каждом изменении строки создается новый объект, а прежний превращается в мусор.
- Для работы со строками изменяемой длины и содержания используется класс StringBuilder
string str;
string world = "Мир";
string str1 = new string(' ', 20);
Преобразование массива символов в строку:
char[ ] mch = { 'М', 'а', 'й', 'к', 'о', 'п' };
string str2 = new string(mch);
Для строк определены следующие операции:
• присваивание (=);
• проверка на равенство (==);
• проверка на неравенство ( ! = ) ;
• обращение по индексу ( [ ] ) ;
• сцепление (конкатенация) строк ( + ) .
Несмотря на то, что строки являются ссылочным типом данных, на равенство и неравенство проверяются не ссылки, а значения строк! Строки равны, если имеют одинаковое количество символов и совпадают посимвольно.
Методы класса String
Length |
определяет длину строки |
Split |
Разделяет строку на элементы. Результаты помещаются в массив строк. |
Equals |
Возвращает true, если объекты имеют одну и ту же длину и состоят из одних и тех же символов |
Compare |
Сравнение двух строк в алфавитном порядке. Возвращает число: 0 – строки равны, больше 0 strA > strB и меньше 0 strA < strB |
EndsWith |
Определяет, совпадает ли конец данного экземпляра строки с указанной строкой. |
Contains |
Возвращает значение, указывающее, равен ли данный экземпляр заданному объекту или значению типа String. |
Replace |
Возвращает новую строку, в которой все вхождения заданной строки заменены другой заданной строкой. |
Возвращает копию этой строки, переведенную в верхний регистр |
|
Удаляет все начальные и конечные знаки пробела из текущего объекта String. |
|
Сцепляет два указанных экземпляра String. |
Пример. Имеется строка символов.
str = "В ногах нет правды. На вкус и цвет товарища нет. На нет и суда нет." +
"Нет дыму без огня. Нет худа без добра. Там хорошо, где нас нет.";
Определить:
- Общее кол-во символов
- Количество предложений
- Количество слов
- Подсчитать количество слов «нет»
- Вывести все слова закаливающиеся символом «а»
- Проверить, имеется ли слово «дым» в тексте
- Выполнить замену в тексте слова “нет” на "не всегда нет"