English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В C# строка представляет собой последовательность символов, используемых для представления текста. Это может быть символ, слово или длинный абзац, заключенный в двойные кавычки. Вот примеры строковых литералов.
"S" "String" "This is a string."
C# предоставляет тип данных String для хранения литералов строк. можно声明 переменную типа строки и назначить литерал строки, как показано ниже.
string ch = "S"; string word = "String"; string text = "This is a string.";
Максимальный размер строки объекта в памяти составляет 2 ГБ, что составляет около миллиарда символов. Однако, на практике, он имеет较少ую зависимость от CPU и памяти компьютера.
Есть два способа声明 переменную строки в C#. Использование класса System.String и ключевое слово string. Оба идентичны и не имеют различий.
string str1 = "Hello"; // Использование ключевого слова строки String str2 = "Hello"; // Использование класса System.String
В C# строка является集合ом или массивом символов. Поэтому можно создать строку с помощью массива char, и можно обращаться к строке, как к массиву char.
char[] chars = {'H','e','l','l','o'}; string str1 = new string(chars); String str2 = new String(chars); foreach (char c in str1) { Console.WriteLine(c); }
Текст в реальном мире может содержать любые символы. В C# строка заключена в двойные кавычки, поэтому она не может содержать (
string text = "This is a "string" in C#.";
C# включает символEscape \ (обратная косая черта) в строку перед этими специальными символами.
В двойных кавычках перед использованием обратной косой черты и специальных символов (например, , , и т.д.) их можно включить в строку.
string text = "This is a \ string str = "xyzdef\\rabc"; string path = "\\\\mypc\\ shared\\project";
Однако, добавление \\
string str = @"xyzdef\rabc"; string path = @"\\mypc\shared\project"; string email = @"[email protected]";
Использование @ и \ для объявления многострочных строк.
string str = @"this is a \ multi line \ string";
Обратите внимание, что в строках необходимо использовать обратную косую черту, чтобы разрешить的出现 двойных кавычек \
string text = @"This is a \ string text = @"This is a \ string text = "This is a \
Множественные строки можно соединить с помощью оператора +.
string name = "Mr." + "James " + "Bond", Code: 007"; string firstName = "James"; string lastName = "Bond"; string code = "007"; string agent = "Mr." + firstName + " " + lastName + ", Code: " + code;
Строки в C# не изменяемы. Это означает, что они читаемы, и после их создания в памяти они не могут быть изменены. При каждом объединении строк .NET CLR создает новый адрес памяти для объединенной строки. Поэтому, если объединяется пять и более строк, рекомендуется использовать StringBuilder вместо строк.
Интерполяция строк является более удобным способом подключения строк. Мы используем символ + для соединения переменных строк с статическими строками.
C#6 включает в себя особый символ $, который используется для идентификации строк интерполяции. Строка интерполяции представляет собой комбинацию статической строки и переменных строк, где переменные строк должны быть заключены в фигурные скобки {}.
string firstName = "James"; string lastName = "Bond"; string code = "007"; string fullName = $"Mr. {firstName} {lastName}, Code: {code}";
В указанных примерах interpolation, $ обозначает строку interpolation, а {} включают переменные строк, которые нужно объединить с строкой.
Используйте две фигурные скобки «{{» или «}}» для включения { или } в строке.