Какой тип данных будет на выходе при сложении числа со строкой в C#?

Ответ

В C# нельзя напрямую использовать оператор + для сложения числа (int, double и т.д.) и строки (string). Это вызовет ошибку компиляции, так как C# — строго типизированный язык и не выполняет неявные преобразования между этими типами для арифметических операций.

Правильные подходы для получения строкового результата:

  1. Явное преобразование числа в строку и конкатенация:

    int number = 10;
    string text = " apples";
    string result = number.ToString() + text; // "10 apples"
  2. Использование интерполяции строк (рекомендуется):

    string result = $"{number}{text}"; // "10 apples"
  3. Использование String.Concat:

    string result = String.Concat(number, text); // "10 apples"
    // Concat автоматически вызывает ToString() для аргументов.

Ключевой момент: Оператор + для строк работает только когда хотя бы один операнд имеет тип string. Если оба операнда — числа, выполняется арифметическое сложение. Чтобы "сложить" число и строку, число необходимо сначала явно преобразовать в строку.

Ответ 18+ 🔞

А, ну это классика, блядь! Смотри, в C# нельзя просто взять и тупо сложить число со строкой через плюс, как в некоторых других языках. Ты попробуешь — компилятор тебе сразу в ебучку даст, ошибку вывалит. Язык строгий, блядь, не любит он такие вольности, когда ты неявно типы мешаешь.

Как правильно-то делать, спросишь?

  1. Преврати число в строку вручную, а потом лепи:

    int number = 10;
    string text = " apples";
    string result = number.ToString() + text; // Получишь "10 apples"

    Без этого ToString() нихуя не выйдет, чувак.

  2. Интерполяция строк — это вообще красота, самый удобный способ:

    string result = $"{number}{text}"; // Опять "10 apples", чисто и понятно

    Вот это я понимаю — элегантно, блядь, и не надо мозги выносить.

  3. Через String.Concat — он сам всё преобразует:

    string result = String.Concat(number, text); // И снова "10 apples"
    // Concat сам внутри дергает ToString() за все аргументы, тебе париться не надо.

Запомни главное, ёпта: Плюсик (+) для строк работает только если хоть одна из сторон — уже строка. Если с двух сторон числа — будет обычное сложение. Хочешь слепить число со словом? Сначала число в текст преврати, потом уже лепи. Всё просто, как три копейки!