Переменные string
могут соединяться вместе для построения строк большего размера с помощью операции +
языка С#. Как вам должно быть известно, такой прием формально называется
static void StringConcatenation
{
Console.WriteLine("=> String concatenation:");
string s1 = "Programming the ";
string s2 = "PsychoDrill (PTP)";
string s3 = s1 + s2;
Console.WriteLine(s3);
Console.WriteLine;
}
Интересно отметить, что при обработке символа +
компилятор C# выпускает вызов статического метода String.Concat
. В результате конкатенацию строк можно также выполнять, вызывая метод String.Concat
напрямую (хотя фактически это не дает никаких преимуществ, а лишь увеличивает объем набираемого кода):
static void StringConcatenation
{
Console.WriteLine("=> String concatenation:");
string s1 = "Programming the ";
string s2 = "PsychoDrill (PTP)";
string s3 = String.Concat(s1, s2);
Console.WriteLine(s3);
Console.WriteLine;
}
Использование управляющих последовательностей
Подобно другим языкам, основанным на С, строковые литералы C# могут содержать разнообразные
Например, чтобы вывести строку, которая содержит символ табуляции после каждого слова, можно задействовать управляющую последовательность \t
. Или предположим, что нужно создать один строковый литерал с символами кавычек внутри, второй — с определением пути к каталогу и третий — со вставкой трех пустых строк после вывода символьных данных. Для этого можно применять управляющие последовательности \"
, \\
и \n
. Кроме того, ниже приведен еще один пример, в котором для привлечения внимания каждый строковый литерал сопровождается звуковым сигналом:
static void EscapeChars
{
Console.WriteLine("=> Escape characters:\a");
string strWithTabs = "Model\tColor\tSpeed\tPet Name\a ";
Console.WriteLine(strWithTabs);
Console.WriteLine("Everyone loves \"Hello World\"\a ");
Console.WriteLine("C:\\MyApp\\bin\\Debug\a ");
// Добавить четыре пустых строки и снова выдать звуковой сигнал.
Console.WriteLine("All finished.\n\n\n\a ");
Console.WriteLine;
}
Выполнение интерполяции строк
Синтаксис с фигурными скобками, продемонстрированный ранее в главе ({0}, {1}
и т.д.), существовал в рамках платформы .NET еще со времен версии 1.0. Начиная с выхода версии C# 6, при построении строковых литералов, содержащих заполнители для переменных, программисты на C# могут использовать альтернативный синтаксис. Формально он называется
Взгляните на показанный ниже дополнительный метод в нашем классе Program(StringInterpolation
), который строит переменную типа string
с применением обоих подходов:
static void StringInterpolation
{
Console.WriteLine("=> String interpolation:\a");
// Некоторые локальные переменные будут включены в крупную строку.
int age = 4;
string name = "Soren";
// Использование синтаксиса с фигурными скобками.
string greeting = string.Format("Hello {0} you are {1} years old.",
name, age);
Console.WriteLine(greeting);
// Использование интерполяции строк.
Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова
Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT