问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中的递归如何理解,能举个例子最好了,希望说的详细一点,比如说有递归入口,递归出口什么的

发布网友 发布时间:2022-05-03 10:03

我来回答

4个回答

热心网友 时间:2023-10-20 11:14

class Factorial {
int fact(int n) {
int result;
if (n == 1) return 1;
result = fact(n-1) * n;
return result;
}
}
它是这样工作的:当fact( ) 带着参数1被调用时,该方法返回1;否则它返回fact( n-1 ) 与n的乘积。为了对这个表达式求值,fact() 带着参数n-1 被调用。重复这个过程直到 n 等于 1,且对该方法的调用开始返回。
给你据个例子:
例如当计算3 的阶乘时,对fact() 的第一次调用引起参数2的第二次调用。这个调用将引起fact 以参数1 的第三次调用,这个调用返回1,这个值接着与2(第二次调用时n的值)相乘。然后该结果(现为2)返回到fact()的最初的调用,并将该结果与3(n的初始值)相乘。这时得到答案,6。如果你在fact()中插入println() 语句,显示每次调用的阶数以及中间结果
不知道这么说,你能理解不

热心网友 时间:2023-10-20 11:14

import java.io.File;

public class FileListDemo {
public static void main(String[] args){
getAllFiles(new File("c:/"));
}
public static void getAllFiles(File dirPath){
System.out.println("dir:"+dirPath.getName()); //输出目录名
File[] files = dirPath.listFiles(); //得到目录下所有的文件和目录
for(int i=0;i<files.length;i++){
if(files[i].isDirectory()){
getAllFiles(files[i]); //如果是目录,递归调用
}else{
System.out.println("file:"+files[i].getName());//输出文件名
}
}
}

}

热心网友 时间:2023-10-20 11:14

LZ可以去看下这篇文章:
http://java.ccidnet.com/art/3539/20060723/650619_1.html

热心网友 时间:2023-10-20 11:15

递归不就是自己调用自己吗?直到满足某一定特定条件就跳出来。

热心网友 时间:2023-10-20 11:14

class Factorial {
int fact(int n) {
int result;
if (n == 1) return 1;
result = fact(n-1) * n;
return result;
}
}
它是这样工作的:当fact( ) 带着参数1被调用时,该方法返回1;否则它返回fact( n-1 ) 与n的乘积。为了对这个表达式求值,fact() 带着参数n-1 被调用。重复这个过程直到 n 等于 1,且对该方法的调用开始返回。
给你据个例子:
例如当计算3 的阶乘时,对fact() 的第一次调用引起参数2的第二次调用。这个调用将引起fact 以参数1 的第三次调用,这个调用返回1,这个值接着与2(第二次调用时n的值)相乘。然后该结果(现为2)返回到fact()的最初的调用,并将该结果与3(n的初始值)相乘。这时得到答案,6。如果你在fact()中插入println() 语句,显示每次调用的阶数以及中间结果
不知道这么说,你能理解不

热心网友 时间:2023-10-20 11:14

import java.io.File;

public class FileListDemo {
public static void main(String[] args){
getAllFiles(new File("c:/"));
}
public static void getAllFiles(File dirPath){
System.out.println("dir:"+dirPath.getName()); //输出目录名
File[] files = dirPath.listFiles(); //得到目录下所有的文件和目录
for(int i=0;i<files.length;i++){
if(files[i].isDirectory()){
getAllFiles(files[i]); //如果是目录,递归调用
}else{
System.out.println("file:"+files[i].getName());//输出文件名
}
}
}

}

热心网友 时间:2023-10-20 11:14

LZ可以去看下这篇文章:
http://java.ccidnet.com/art/3539/20060723/650619_1.html

热心网友 时间:2023-10-20 11:15

递归不就是自己调用自己吗?直到满足某一定特定条件就跳出来。

热心网友 时间:2023-10-20 11:14

class Factorial {
int fact(int n) {
int result;
if (n == 1) return 1;
result = fact(n-1) * n;
return result;
}
}
它是这样工作的:当fact( ) 带着参数1被调用时,该方法返回1;否则它返回fact( n-1 ) 与n的乘积。为了对这个表达式求值,fact() 带着参数n-1 被调用。重复这个过程直到 n 等于 1,且对该方法的调用开始返回。
给你据个例子:
例如当计算3 的阶乘时,对fact() 的第一次调用引起参数2的第二次调用。这个调用将引起fact 以参数1 的第三次调用,这个调用返回1,这个值接着与2(第二次调用时n的值)相乘。然后该结果(现为2)返回到fact()的最初的调用,并将该结果与3(n的初始值)相乘。这时得到答案,6。如果你在fact()中插入println() 语句,显示每次调用的阶数以及中间结果
不知道这么说,你能理解不

热心网友 时间:2023-10-20 11:14

import java.io.File;

public class FileListDemo {
public static void main(String[] args){
getAllFiles(new File("c:/"));
}
public static void getAllFiles(File dirPath){
System.out.println("dir:"+dirPath.getName()); //输出目录名
File[] files = dirPath.listFiles(); //得到目录下所有的文件和目录
for(int i=0;i<files.length;i++){
if(files[i].isDirectory()){
getAllFiles(files[i]); //如果是目录,递归调用
}else{
System.out.println("file:"+files[i].getName());//输出文件名
}
}
}

}

热心网友 时间:2023-10-20 11:14

LZ可以去看下这篇文章:
http://java.ccidnet.com/art/3539/20060723/650619_1.html

热心网友 时间:2023-10-20 11:15

递归不就是自己调用自己吗?直到满足某一定特定条件就跳出来。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
arrive in和arrive at 有什么区别? 磁力泵为什么可空转? 为什么不让衬氟塑料磁力泵空转?怎样提升设备稳定性? 工业软管泵 塑料磁力泵为什么不能空转 求推荐男主和女配在一起的小说? 《红衣天下》txt全集下载 检测公司检测哪些 检测公司是怎么样的 检测公司属于什么企业 水泵的功率扬程流量之间的关系? 递归范例 java 怎样去忘记一个喜欢了四年的人? 如何快速的忘记对自己很重要的一个人? 拼多多上买东西后还能反还原款靠谱吗? 怎样能生产出abs高光塑料 最硬透明塑料 ABS塑料有什么用途?如何鉴定? powersupply中文是什么意思 power supply 与 charger 有何不同 怎么才能快速忘掉一个人? 各种塑料的硬度与韧性那个更好,像ABS,PC,PMMA,PP,PE,POM,硬度韧性如何排名? 主板电源接口上POWER SUPPLY ON是连开机按钮的吗? 怎样才能忘记一个人?用什么方法能最快忘记? 怎么能快速忘记一个人 220交流电机上power跟supply分别代表什么线? 千牛视频发送失败11821 POE POWER SUPPLY是什么? 什么是电源供应器? “power supply”是什么意思? 72AX32安倍的台铃电动车卖多少钱一辆? 电动车2000w电机72v32车架子没有电瓶吉祥豹牌子的大概多少钱? 幼儿安全教育《马路走失怎么办》教案 关于十一月你好的唯美心语有哪些? 已确认收入,但款项尚未收到,应确认增值税吗? 2021新电影有哪些 最近新电影有哪些 最近都有哪些新电影? 近日有哪些新电影? 新电影都有什么 最新电影都有哪些? 苹果5s接听电话界面怎么设置 苹果手机接听电话界面怎么设置照片不单单针对个人 苹果手机怎么设置来电接听的界面 苹果6Splus为什么接电话,就是看不到接电话的界面 iphone6来电画面为什么有两种 怎么回事 Win10笔记本蓝屏重启怎么样解决 大学生职业生涯规划就业如何定位 win10经常蓝屏和重启怎么办? 江苏省简称赣,拼音