![](/img/trans.png)
[英]How can I modify the first for loop in this java method into a recursive call?
[英]How can i make for loop a recursive method
如何使此代码成为递归方法?
for (int i = 3; i < arr.length; i++) {
writer.write(arr[i] + "\n");
strout += arr[i] + "\n";
}
您可以尝试将代码封装在一个 function 中:
public static String printRecursive(BufferedWriter writer, String[] arr, int i) throws IOException {
String strout = "";
if(i<arr.length) {
writer.write(arr[i] + "\n");
//System.out.println(arr[i] + "\n");
strout += arr[i] + "\n" + printRecursive(writer,arr,i+1);
}
return strout;
}
你可以从 main 中调用它:
String strRec = printRecursive(writer,arr,3);
我希望这对你有帮助。
编辑:根据最后评论添加作者
像那样的东西?
let arr = [/* array elements */];
let idx = 3;
let stdout = "";
const recursiveMethod = () => {
writer.write(`${arr[idx]}\n`);
strout += `${arr[idx]}\n`;
if(idx < arr.length) {
idx++;
return recursiveMethod();
}
}
recursiveMethod();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.