分享好友 最新动态首页 最新动态分类 切换频道
递归与文件操作:从基础到高级应用
2024-12-26 08:40

递归与文件操作:从基础到高级应用

  • 递归:指在当前方法内调用自己的这种现象。
  • 递归的分类:
    • 递归分为两种,直接递归和间接递归。
    • 直接递归称为方法自身调用自己。
    • 间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。
  • 注意事项
    • 递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
    • 在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
    • 构造方法,禁止递归
 
 

计算1 ~ n的和

分析:num的累和 = num + (num-1)的累和,所以可以把累和的操作定义成一个方法,递归调用。
实现代码

 

代码执行图解

💡小贴士:递归一定要有条件限定,保证递归能够停止下来,次数不要太多,否则会发生栈内存溢出。

  • 阶乘:所有小于及等于该数的正整数的积。
 

分析:这与累和类似,只不过换成了乘法运算,学员可以自己练习,需要注意阶乘值符合int类型的范围。

 

代码实现

 
 

分析:多级目录的打印,就是当目录的嵌套。遍历之前,无从知道到底有多少级目录,所以我们还是要使用递归实现。
代码实现

 
 

文件搜索

搜索 目录中的 文件。
分析

  1. 目录搜索,无法判断多少级目录,所以使用递归,遍历所有目录。
  2. 遍历目录时,获取的子文件,通过文件名称,判断是否符合条件。

代码实现

 
 

是一个接口,是File的过滤器。 该接口的对象可以传递给File类的 作为参数, 接口中只有一个方法。
:测试pathname是否应该包含在当前File目录中,符合则返回true。
分析

  1. 接口作为参数,需要传递子类对象,重写其中方法。我们选择匿名内部类方式,比较简单。
  2. 方法,参数为File,表示当前File下所有的子文件和子目录。保留住则返回true,过滤掉则返回false。保留规则
    1. 要么是.java文件。
    2. 要么是目录,用于继续遍历。
  3. 通过过滤器的作用,返回的数组元素中,子文件对象都是符合条件的,可以直接打印。

代码实现

 
 

分析是只有一个方法的接口,因此可以用lambda表达式简写。
lambda格式

 

代码实现

最新文章
吃鸡全新姿势:女方用嘴巴吃鸡后有什么症状爆笑科普
女方用嘴巴吃鸡后有什么症状,这个问题一上线便引发热议,瞬间霸占了热搜榜。作为一名喜欢深挖网络热点的人,我自然不会错过这场全民狂欢。那么,这究竟是一个正经问题,还是一场“玩梗盛宴”?女方用嘴巴吃鸡后有什么症状,或许答案不重要
骨科公开指南:重庆专业的骨科医院排名实时揭晓-重庆滑膜炎到哪家医院看
骨科公开指南:重庆专业的骨科医院排名实时揭晓-重庆滑膜炎到哪家医院看,排名公布:重庆骨科医院重庆红楼医院。重庆治疗骨科医院排名公布:1.重庆骨科医院.2重庆红楼医院骨科.3.重庆专业治疗骨科医院。 踝关节滑膜炎的患者首先应该确定自
SEO外链自动生成工具:万千外链生成器
SEO中的一个核心要素是外部链接,即从其他网站指向您网站的链接。一个有效的外部链接策略不仅能提高网站在搜索引擎结果页面(SERPs)中的排名,还能带来额外的流量和提升品牌可信度。在当今高度竞争的网络环境中&#
谷歌发布 Chrome 128 稳定版:引入隔离式 Web 应用,支持标准 CSS 缩放、Ruby 换行
8 月 22 日消息,谷歌昨天发布博文,面向 Windows、macOS、Linux、以及 iOS 平台发布 Chrome 128 稳定版更新,主要提高了浏览器的稳定性、改善了运行性能。Chrome 128 稳定版带来了包括隔离式 Web 应用程序(Isolated Web Apps)在内的诸多
技术支持与SEO优化,提升网站曝光率
九一传媒公司制作网站的服务优势与实际应用九一传媒公司是一家专业的网络服务公司,致力于为各类企业提供高质量的网站制作和开发服务。随着互联网的飞速发展,企业对网站的需求越来越高,网站不仅是展示公司形象的平台,更是吸引客户、提升
预算管理有哪些功能,如何使用
预算管理支持“费用预算”、“按量编制预算”、“使用率与覆盖率预算”三种预算类型:费用预算:您可以按照财务单元、账号、产品等维度,设置以年、季、月为周期的消费金额预算和对应的预警阈值。当实际消费金额或预测金额达到您设置的预警
被人遗忘的MAX_FILE_SIZE文件上传限制大小参数
 在文件上传中,我们经常会要求显 示用户上传文件大小,超过上传限制的文件就会不允许用户上传。虽然我们可以用程序去判断上传文件是否超过限制,但是其实我们的PHP程序是无法判断用户本 地文件大小的。所以等到我们的PHP来判断文件大小的
【WPS WORD】关于如何快速整理从知网论文中复制过来的文档内容及格式
最近写了一篇文摘性质的报告,由于内容基本取自知网论文,免不了要对下载的内容进行复制粘贴和整理。 众所周知,知网的论文有两种常用下载格式:pdf格式(期刊论文)和caj格式(学位论文)
自己建立公司网站,步骤与策略全解析
在当今数字化的时代,拥有一个专业的公司网站是提升企业品牌形象、扩大市场影响力的重要途径。自己建立公司网站不仅可以节省成本,还能确保网站设计与企业文化和业务需求的高度匹配。本文将为您提供一些关键步骤和策略,帮助您从零开始搭建
风水玄学命理排盘测算工具小程序软件系统搭建开发(成熟案例)
 风水玄学命理排盘测算工具软件开发 需求分析:在开发过程中,我们首先对用户需求进行了深入的调查和分析,了解了用户在使用风水玄学命理排盘测算工具时的需求和痛点,为后续的功能设计和实现提供了有力的支持。 功能设计:根据需求分析
相关文章
推荐文章
发表评论
0评