Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在for循环中从中断处继续_C#_Loops - Fatal编程技术网

C# 如何在for循环中从中断处继续

C# 如何在for循环中从中断处继续,c#,loops,C#,Loops,这样做: I like C++. I like C#. I like Java. break关键字将始终“break out”当前代码块。在本例中,它是您的内部for循环 我想您正在寻找continue关键字。请尝试下面的方法: richTextBox1.Text = string.Join("\n", sentence ); String []句子=新字符串[]{我喜欢C++”,“我喜欢C”,“我喜欢java”。 for(int i=0;i

这样做:

I like C++.
I like C#.
I like Java.

break
关键字将始终“break out”当前代码块。在本例中,它是您的内部for循环

我想您正在寻找
continue
关键字。

请尝试下面的方法:

richTextBox1.Text = string.Join("\n", sentence );
<代码> String []句子=新字符串[]{我喜欢C++”,“我喜欢C”,“我喜欢java”。 for(int i=0;i<句子长度;i++) { richTextBox1.Text+=句子[j]+“\n”; } <代码> String []句子=新字符串[]{“我喜欢C++”,“我喜欢C”,“我喜欢java”); for(int i=0;i<句子长度;i++) { xyz: for(int j=i;j<句子长度;j++) { richTextBox1.Text+=句子[j]+“\n”; 打破 } i++; 如果(i==句子长度){break;} 转到xyz; } <代码> String []句子=新字符串[]{“我喜欢C++”,“我喜欢C”,“我喜欢java”); for(int i=0;i<句子长度;i++) { for(int j=**i**;j<句子长度;j++) { richTextBox1.Text+=句子[j]+“\n”; 打破 } }
在第二个循环中将其设为int j=i,而不是int j=0。。虽然有更好的解决“这个”问题的方法,但我假设您正在查看一组不同的问题,以检查这种延续是否可能

也许您不想在最后一项之后结束该行?然后:

string[] sentence = new string[] { "I like C++.", "I like C#.", "I like Java." };

for (int i = 0; i < sentence.Length; i++)
{
    for (int j = **i**; j < sentence.Length; j++)
    {
        richTextBox1.Text += sentence[j] + "\n";
        break;
    }
}
<代码> String []句子=新字符串[]{我喜欢C++”,“我喜欢C”,“我喜欢java”。 for(int i=0;i<句子长度;i++){ richTextBox1.Text+=句子[j]; 如果(i<句子长度-1) richTextBox1.Text+=“\n”; }
为什么您认为中断是必须的?如果您只进行了一次迭代,那么第二个循环的意义是什么?为什么在那里有
中断?这实际上是在说
richTextBox.Text+=sentenct[0]+“\n”当它到达该循环时。你只会得到
I\nI\nI\n
“如果代码不包含错误”-嗯,它们在我看来相当粗糙。例如,您没有在任何地方使用
i
,并且可以更简单地实现所需的结果……您似乎在寻找这个代码的字面答案,而不是解决方案。答案是否定的,如果您使用了
break
,那么您使用它的原因与其说是答案,不如说是注释。在本例中,for循环由于goto。。。GoTo必须在if语句中。@Raymond请现在检查它
string[] sentence = new string[] { "I like C++.", "I like C#.", "I like Java." };

for (int i = 0; i < sentence.Length; i++)
{
        richTextBox1.Text += sentence[j] + "\n";
}
string[] sentence = new string[] { "I like C++.", "I like C#.", "I like Java." };

            for (int i = 0; i < sentence.Length; i++)
            {
                xyz:

                for (int j = i; j < sentence.Length; j++)
                {
                    richTextBox1.Text += sentence[j] + "\n";
                    break;
                }

                 i++;
                 if (i == sentence.Length) { break; }
                 goto xyz;
            }
string[] sentence = new string[] { "I like C++.", "I like C#.", "I like Java." };

for (int i = 0; i < sentence.Length; i++)
{
    for (int j = **i**; j < sentence.Length; j++)
    {
        richTextBox1.Text += sentence[j] + "\n";
        break;
    }
}
string[] sentence = new string[] { "I like C++.", "I like C#.", "I like Java." };

for (int i = 0; i < sentence.Length; i++) {
    richTextBox1.Text += sentence[j];
    if(i < sentence.Length-1)
        richTextBox1.Text += "\n";
}