Метод Create
Статический метод Create принимает длину, состояние и делегат SpanAction<char, TState>, который заполняет символы. Так можно собрать строку без промежуточных аллокаций.
Синтаксис
string res = string.Create(length, state, action);
Пример
Давайте соберём "abcde" из символов:
using System;
class Program
{
static void Main()
{
string res = string.Create(5, "abcde", (span, state) =>
{
for (int i = 0; i < span.Length; i++)
span[i] = state[i];
});
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте заполним повтором символа:
using System;
class Program
{
static void Main()
{
string res = string.Create(5, 'a', (span, ch) =>
{
for (int i = 0; i < span.Length; i++)
span[i] = ch;
});
Console.WriteLine(res);
}
}
Результат выполнения кода:
"aaaaa"
Смотрите также
-
Concat,
который склеивает готовые строки -
Format,
который формирует текст -
ToCharArray,
который даёт массив символов -
Intern,
который кладёт строку в пул