Что выведет код Junior Строки обновлено
StringBuilder: Insert, Remove, Replace
Вопрос
Что выведет программа (.NET 8)? По строке на каждый вывод.
using System.Text;
var sb = new StringBuilder("abc");
sb.Append("def").Insert(0, "_").Remove(2, 2);
Console.WriteLine(sb);
sb.Replace("e", "E");
Console.WriteLine(sb.ToString() + sb.Length);
Попробуйте сами
Напишите, что выведет код: каждый вывод с новой строки.
Показать ответ и разбор
Коротко
Код выведет: _adef, _adEf5. abc + def = abcdef, вставка в начало даёт abcdef.
Что выведет
_adef
_adEf5
Разбор
abc + def = abcdef, вставка в начало даёт _abcdef. Remove(2, 2) удаляет 2 символа с индекса 2 (bc): _adef. После Replace получаем _adEf, длина 5. В отличие от строки, StringBuilder меняется на месте и методы возвращают тот же объект для цепочки.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.