none
Вопрос RRS feed

  • Вопрос

  • Есть код:

     

    for (int i = 0; i < a.Length; i++) { if (a[i] == '.') a.Replace('.', ','); }

    Console.WriteLine(a);

    Также есть вопрос: почему при выводе переменной "а" на консоль символ "точка" не меняется на символ "запятая"?
    3 октября 2015 г. 7:36

Ответы

  • Строки в .NET неизменяемые. Методы, "меняющие" строку, возвращают новый экземпляр строки с новым значение, и Вы этот экземпляр успешно никуда не сохраняете.
    • Предложено в качестве ответа kosuke904 3 октября 2015 г. 9:14
    • Помечено в качестве ответа Ermak1 3 октября 2015 г. 12:50
    3 октября 2015 г. 8:36

Все ответы

  • Строки в .NET неизменяемые. Методы, "меняющие" строку, возвращают новый экземпляр строки с новым значение, и Вы этот экземпляр успешно никуда не сохраняете.
    • Предложено в качестве ответа kosuke904 3 октября 2015 г. 9:14
    • Помечено в качестве ответа Ermak1 3 октября 2015 г. 12:50
    3 октября 2015 г. 8:36
  • Совсем не обязательно проверять каждый символ.
    Replace заменяет каждую обнаруженную подстроку на 
    требуемую.

    string S = ",,,,";
    S=S.Replace(",",".");

    • Предложено в качестве ответа LXGDARKEditor 5 октября 2015 г. 12:13
    • Отменено предложение в качестве ответа LXGDARKEditor 5 октября 2015 г. 12:13
    3 октября 2015 г. 12:30
  • Строки в .NET неизменяемые. Методы, "меняющие" строку, возвращают новый экземпляр строки с новым значение, и Вы этот экземпляр успешно никуда не сохраняете.

    Спасибо за помощь.
    3 октября 2015 г. 12:51