Можно ли в языке C# когда вводишь строку "string", например: "Собака" - разделить его на буквы "C", "о", "б", "а", "к", "а". Я знаю по функцию "Split", но там надо задавать место разделение, а мне нужно прям каждый символ и пробел тоже!
В классе string
есть специальный метод ToCharArray
, который возвращает массив символов. Также string
реализует IEnumerable<char>
, поэтому мы можем воспользоваться методом расширения из Linq ToArray
. Выбирайте какой нравится (но подозреваю, что первый может работать быстрее, т.к. строке известна ее длина, а второй более универсальный метод и работает для любых последовательностей):
string s = "string";
char[] a = s.ToCharArray();
char[] b = s.ToArray();
Ну а если вам не нужно изменять данные, а только читать - можно воспользоваться индексатором: Console.WriteLine(s[0]);
Если вы хотите посимвольно отредактировать строку, то получите массив символов, как написано выше, отредактируйте любые элементы в нем и получите строку из конечного массива (у string
есть конструктор, принимающий массив символов):
string s2 = new string(a);
Вместо массива можно использовать класс StringBuilder
- он представляет изменяемую строку, индексатор у него поддерживает как чтение, так и запись:
string s1 = "string";
StringBuilder sb = new StringBuilder(s1);
sb[0] = 'b';
sb[1] = 'o';
string s2 = sb.ToString();
Console.WriteLine(s2);
Как вариант:
string str = "Собака";
foreach(char c in str)
{
Console.WriteLine(c);
}
Console.ReadLine();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть сервис с параметрами ServiceBehavior(InstanceContextMode = InstanceContextModeSingle, IncludeExceptionDetailInFaults = true, ConcurrencyMode = ConcurrencyMode
Вся суть в заголовкеНужна кнопка, которая бы отображалась как текст определенного цвета
Доброе время сутокЕсть следующая схема: