Mir-knigi.online
Книги онлайн читать бесплатно!
  • Главная
  • Жанры
  • ТОП книг
  • ТОП авторов
  • Контакты

Язык программирования C#9 и платформа .NET5

Часть 59 из 642 Информация о книге

  Console.WriteLine();

}

Здесь объяснять особо нечего: метод просто вызывает разнообразные члены, такие как

ToUpper()
и
Contains()
, на локальной переменной
string
, чтобы получить разные форматы и трансформации. Ниже приведен вывод:

***** Fun with Strings *****

=> Basic String functionality:

Value of firstName: Freddy

firstName has 6 characters.

firstName in uppercase: FREDDY

firstName in lowercase: freddy

firstName contains the letter y?: True

firstName after replace: Fred

Несмотря на то что вывод не выглядит особо неожиданным, вывод, полученный в результате вызова метода

Replace()
, может вводить в заблуждение. В действительности переменная
firstName
вообще не изменяется; взамен получается новая переменная
string
в модифицированном формате. Чуть позже мы еще вернемся к обсуждению неизменяемой природы строк.

Выполнение конкатенации строк

Переменные

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# могут содержать разнообразные управляющие последовательности, которые позволяют уточнять то, как символьные данные должны быть представлены в потоке вывода. Каждая управляющая последовательность начинается с символа обратной косой черты, за которым следует специфический знак. В табл. 3.6 перечислены наиболее распространенные управляющие последовательности.

Язык программирования C#9 и платформа .NET5 - _031.png

Например, чтобы вывести строку, которая содержит символ табуляции после каждого слова, можно задействовать управляющую последовательность

\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;


Перейти к странице:
Предыдущая страница
Следующая страница
Жанры
  • Военное дело
  • Деловая литература
  • Детективы и триллеры
  • Детские
  • Детские книги
  • Документальная литература
  • Дом и дача
  • Дом и Семья
  • Жанр не определен
  • Зарубежная литература
  • Знания и навыки
  • История
  • Компьютеры и Интернет
  • Легкое чтение
  • Любовные романы
  • Научно-образовательная
  • Образование
  • Поэзия и драматургия
  • Приключения
  • Проза
  • Прочее
  • Психология и мотивация
  • Публицистика и периодические издания
  • Религия и духовность
  • Родителям
  • Серьезное чтение
  • Спорт, здоровье и красота
  • Справочная литература
  • Старинная литература
  • Техника
  • Фантастика и фентези
  • Фольклор
  • Хобби и досуг
  • Юмор
Mir-knigi.online

Бесплатная онлайн библиотека для чтения книг без регистрации с телефона или компьютера. У нас собраны последние новинки, мировые бестселлеры книжного мира.

Контакты
  • [email protected]
Информация
  • Карта сайта
© mir-knigi.online, 2026. | Вход