gpt4 book ai didi

java - 在递归方法中使用迭代循环时出现问题

转载 作者:行者123 更新时间:2023-12-01 23:48:29 25 4
gpt4 key购买 nike

嘿,我正在制作一个在 for 循环内使用递归的方法,并且由于某种原因 for 循环从未迭代...这是我正在做的示例,但代码更简单。该代码永远不会执行到 for 循环中的 return 语句之后。程序以状态 0 退出。

public static int print (int index, String num) throws IOException
{
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("FILE.out")));
if(index == 6)
{
out.println(num);
return 5;
}
else
{
String tempName = num;
int i = 0;
for(int i = 0; i < 10; i++)
{
tempName = num;
tempName = num + Integer.toString(i);
System.out.println("Num: " + num + " Index: " + index + " i: " + i);
return print((index + 1), num);
}
}
if(index == 0)
out.close();
return 5;
}

控制台打印:

Num: Index: 0 i: 0

Num: 0 Index: 1 i: 0

Num: 00 Index: 2 i: 0

并且文件 FILE.out 为空。

最佳答案

您在第一次迭代中返回。

解决方案:不要在这一行使用 return :

return print((index + 1), num);

由于不可能猜测您的初衷是什么,因此很难给出真正改善您的问题的答案。

关于java - 在递归方法中使用迭代循环时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16659091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com