Sobes.tech
Intern
179
questionbank

Что такое строка в C#?

Answer from AI

sobes.tech AI

Строка (string) в C# — это последовательность неизменяемых символов Юникода.

Основные характеристики:

  1. Неизменяемость: После создания объекта string его содержимое нельзя изменить. Любая операция, которая выглядит как изменение строки (например, конкатенация), фактически создает новый строковый объект.
  2. Тип: string является ссылочным типом (System.String), но ведет себя во многом как тип значения благодаря перегруженным операторам и специальной обработке компилятором.
  3. Литералы: Строковые литералы заключаются в двойные кавычки ("...").
  4. @-литералы: Для строк с управляющими символами или многострочных строк удобно использовать verbatim string literals (с символом @ перед кавычкой).
  5. Интерполяция строк: Синтаксис $"{...}" для встраивания значений переменных и выражений в строку.

Примеры:

string name = "Иван"; // Строковый литерал
string greeting = $"Привет, {name}!"; // Интерполяция строк
string path = @"C:\Program Files\MyApp\"; // Verbatim literal

Неизменяемость важна для безопасности и производительности в некоторых сценариях (например, при использовании строк в качестве ключей в словарях). Для создания изменяемых строк используются классы типа StringBuilder.

using System.Text;

StringBuilder sb = new StringBuilder();
sb.Append("Первая часть.");
sb.Append(" Вторая часть.");
string finalString = sb.ToString(); // "Первая часть. Вторая часть."