- •Windows-проект на языке с#
- •Константы
- •Организация консольного ввода-вывода в c#
- •Методы классов в c#
- •Модификаторы для параметров методов
- •Массивы в c#
- •Одномерные массивы
- •Многомерные массивы
- •Базовый класс System.Array
- •Работа со строками в c#
- •Управляющие последовательности и вывод служебных символов
Работа со строками в c#
Встроенный тип string (строки Unicode ) относится к ссылочному типу данных и является псевдонимом класса System.String. Этот базовый класс обеспечивает программиста множеством полезных свойств и методов для обработки строк. Часть методов является методами объектов, часть - методами класса (статическими).
Таблица 20.10 . Некоторые члены класса System.String
Член класса |
Назначение |
Length |
Это свойство возвращает длину указанной строки |
Concat() |
Этот статический метод возвращает новую строку, склеенную из двух исходных |
CompareTo() |
Сравнивает две строки |
Copy() |
Этот статический метод создает новую копию существующей строки |
Format() |
Используется для форматирования строки с использованием спецификаторов форматирования и подстановочных выражений вида {0} |
Insert() |
Используется для вставки строки внутрь существующей |
PadLeft() PadRight() |
Для заполнения строки слева или справа указанными символами |
Remove() Replace() |
Эти методы позволяют создать копию строки с внесенными изменениями (частично удаленными или замененными символами) |
ToUpper() ToLower() |
Возвращают копию строки с символами в верхнем или нижнем регистре |
Для этого типа некоторые операции перегружены так, что позволяют работать со значениями, а не со ссылками. Например, при использовании операторов равенства == или неравенства != происходит сравнение значений строковых объектов, а не адресов этих объектов в оперативной памяти. Оператор сложения + перегружен так, что при его применении к строковым объектам вызывается неявно метод Concat(). Кроме того, можно обратиться к любому символу строки с помощью оператора индекса [].
using System;
namespace Test
{
class Test
{
static void Main()
{
string title = "******************
**************************\n"
+ "\tМетоды класса System.String\n"
+ "************************
********************\n";
Console.WriteLine(title);
// Создаем строку по классу
System.String strObject = "Это строка-экземпляр
класса System.String:";
string strAlias = "Это строка-экземпляр
встроенного псевдонима string:";
// Сравниваем содержимое
if(strObject == strAlias)
Console.WriteLine("Строки равны");
else
Console.WriteLine("Строки неравны");
// Склеиваем строки
string addString = strObject + strAlias;
Console.WriteLine("\nСклеенные строки\n{0}",
addString);
// Применяем индексатор для доступа к символам строки
Console.WriteLine("\nСимволы строки \"
{0}\"", strAlias);
for(int i = 0; i < strAlias.Length; i++)
Console.WriteLine("{0}. {1}", i,
"\t" + strAlias[i]);
while(true);
}
}
}
Листинг 13 . Пример работы со строками
Результат выполнения примера
********************************************
Методы класса System.String
********************************************
Строки неравны
Склеенные строки
Это строка-экземпляр класса System.String:Это строка-экземпляр встроенного псевдонима string:
Символы строки "Это строка-экземпляр встроенного псевдонима string:"
0. Э
1. т
2. о
3.
4. с
5. т
6. р
7. о
8. к
9. а
10. -
11. э
12. к
13. з
14. е
15. м
16. п
17. л
18. я
19. р
20.
21. в
22. с
23. т
24. р
25. о
26. е
27. н
28. н
29. о
30. г
31. о
32.
33. п
34. с
35. е
36. в
37. д
38. о
39. н
40. и
41. м
42. а
43.
44. s
45. t
46. r
47. i
48. n
49. g
50. :