ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.12.2025
Просмотров: 3198
Скачиваний: 1
Глава 9
Работа со строками в С#
В этой главе...
> Основные операции со строками
} Разбор считанной строки |
• |
> Форматирование выводимых строк
многих приложениях можно рассматривать тип s t r i n g как один из встроен ных типов-значений наподобие i n t или c h a r . К строкам применимы некото рые из операций, зарезервированных для встроенных типов, например:
int i = |
1; |
// |
Объявление и |
инициализация i n t |
s t r i n g s |
= |
" a b c " ; |
// Объявление |
и инициализация s t r i n g |
С другой стороны, как видно из приведенного далее фрагмента, строки можно рас сматривать как пользовательский класс:
s t r i n g |
s i |
= n e w S t r i n g ( ) ; |
s t r i n g |
s 2 |
= " a b e d " ; |
int n L e n g t h O f S t r i n g = s 2 . L e n g t h ;
Так что же такое s t r i n g — тип-значение или класс? На самом деле S t r i n g — это класс, который в силу его широкой распространенности С# трактует специальным обра зом. Например, ключевое слово s t r i n g представляет собой синоним имени класса String, как видно из следующего фрагмента исходного текста:
String |
s i |
= |
" a b e d " ; |
/ / |
Присваивание |
строкового литерала |
|
|
|
|
/ / |
объекту класса S t r i n g |
|
s t r i n g |
s 2 |
= |
s i ; |
/ / |
Присваивание |
объекта класса S t r i n g |
//строковой переменной
Вэтом примере переменная si объявлена как объект класса S t r i n g (обратите внима ние на прописную S в начале имени), в то время как s2 объявлена как просто s t r i n g (сострочной s в начале имени). Однако эти два присваивания демонстрируют, что s t r i n g
иS t r i n g — это одинаковые (или совместимые) типы.
Вдействительности то же самое справедливо и для других встроенных ти
пов. Даже тип i n t имеет соответствующий класс I n t 3 2, d o u b l e — класс D o u b l e и т.д.; отличие в том, что s t r i n g и S t r i n g — это действительно одно и то же.