【发布时间】:2016-11-23 01:12:41
【问题描述】:
我发现我的循环中有一个 return 语句。无论如何感谢大家的帮助。
我在 Java 中遇到了一个没有递增/递减表达式的 for 循环。事实上,我的 IDE 告诉我表达式是死代码。
没有递增/递减表达式的循环:
for(int i = 5; i!=0;)
//Do something...
然后每当我尝试像这样添加i--:
for(int i = 5; i!=0; i--)
我的 IDE 告诉我 i-- 是死代码,这让我很困惑,因为我不知道我将如何更改。所以我的问题是,这个循环在 Java 中是如何工作的?这是一个无限循环吗? JVM 会自行递减 i 吗?等等……
小例子:
for(int i=10; i!=0;i--)
//Do something...
完成:
public void methodName(int number){
for(int i = number; i!=0; i--)
//Do something...
【问题讨论】:
-
你能发一个minimal reproducible example吗?单独判断一行,删除
i--是错误的。这将导致无限循环——除非i在循环体内的其他地方被修改。 -
@JohnKugelman 是的。一会儿……
-
如果你想要一个无限循环,只需使用
while (true)或其他。 -
顺便说一句,您似乎误解了“最小、完整和可验证的示例”一词。它意味着一段代码,它同时是最小的和完整的。 (并且是可验证的,这意味着理想情况下我们应该能够编译和运行它。)
-
我发现了问题。我在 for 循环中有一条返回线。感谢大家的帮助!