在Cocoa Touch中跳过了循环

时间:2012-01-03 02:00:43

标签: for-loop

我正在使用Cocoa Touch和Objective-C进行一些编程,现在我遇到了一个非常令人沮丧的问题。我有一个方法,其中有一个for循环。然而,每次我在iOS模拟器中运行应用程序时,循环中的代码都不会运行,并且它不会在循环内的任何断点处停止。起初,我认为它只是在方法中,但它现在看来它发生在代码中的任何地方。任何方法中的for循环都无法工作。这是我的一个循环的示例,如果您发现任何错误,我将非常感谢您的帮助。

for (int i = 0; i == 3; i++) {
    NSLog(@"This is a test.");
}

这可能是我所遗漏的一些非常愚蠢的东西,但我看不到任何可能导致这种情况的事情。如果您需要更多代码,请先询问,并提前致谢!

5 个答案:

答案 0 :(得分:5)

只要条件为真,for循环上的条件就会导致循环运行。

在你引用的例子中,循环将永远不会执行,因为我开始时等于零,测试条件为i == 3.由于i == 3立即为假,循环甚至不会运行一次。

如果你打算在我三岁的时候运行循环,那么测试条件应该是i< 3使整个

for (int i = 0; i < 3; i++) {

考虑这个问题的另一种方法是循环将继续运行“而我<3”。

我希望这会有所帮助。

答案 1 :(得分:1)

代码中for循环的第二部分i == 3 - 是在循环的每次迭代之前检查的测试。如果测试为假,则循环结束。由于第一次迭代时i为0,因此i == 3为假。

您可能需要i <= 3i < 3作为条件。

答案 2 :(得分:1)

只要延续条件为真,就会运行for循环。将“i == 3”更改为“i&lt; = 3”。

答案 3 :(得分:0)

可能会尝试

 for(int i = 0; i < 4;i++){
 NSLog("This is a test");
}

答案 4 :(得分:0)

我认为你的循环应该更像这样:

for (int i = 0; i <= 3; i++) {
    NSLog(@"This is a test.");
}