Подсчёт кол-во повторений символа в строке без if
Можно ли как-то это реализовать проверку без использования if?
int n = 0;
for (int i = 0; i<=TextLable.Text.Length; i++) {
if (TextLabel.Text[i] == '#')
{
n++; //узнаём кол-во повторений символа '#'
}
}
//int n = TextLabel.Text.Count(f => f == '#'); //?
Ответы (1 шт):
Автор решения: Виктор
→ Ссылка
Например так:
int n = 0;
char[] charArr = TextLabel.Text.ToCharArray();
foreach (char ch in charArr)
{
n = (ch == '#') ? n+1 : n;
}
На всякий случай, без цикла
n = TextLabel.Text.Count(f => (f == '#'))
n = TextLabel.Text.Where(x => (x == '#')).Count();
foreach (char c in TextLabel.Text)
{
n = (c == '#') ? n+1 : n;
}
// Здесь шаг задать можно
string myString = TextLabel.Text;
for (int i = 0; i < myString.Length; i++)
{
n = (myString[i] == myChar) ? n+1 : n;
}