【发布时间】:2018-11-05 02:03:11
【问题描述】:
我知道这是一个简单的问题,但有人可以帮我弄清楚如何将此 while 循环转换为 for 循环。我一直在尝试转换它时遇到错误
static string CountLines(string s)
{
long count = 0;
int start = 0;
while ((start = s.IndexOf('\n', start)) != -1)
{
count++;
start++;
}
return count.ToString();
}
这是我尝试过的方式
for (int start = 0; start !=-1 ; start = s.IndexOf('\n', start)) {
count++;
start++;
}
【问题讨论】:
-
“不断出错” - 什么是错误?
-
没有任何反应的错误
-
您是否需要将其转换为for循环?
-
是的,我愿意。我需要它
-
您基本上是在计算给定字符串中某个字符的出现次数。即您的情况下的
\n字符。您的选择是实现这一目标的众多方法之一。有替代方案,一些使用 LINQ,可以更清晰。见stackoverflow.com/questions/10391481/…
标签: c# for-loop while-loop