当前位置: 首页 > news >正文

Java语言程序设计基础篇_编程练习题*18.29(某个目录下的文件数目)

题目:*18.29(某个目录下的文件数目)

编写一个程序,提示用户输入一个目录,然后显示该目录下的文件数。

和上一题(18.28)的思路差不多,把找到文件后累加大小到变量变成计数+1即可。

Java语言程序设计基础篇_编程练习题*18.28 (非递归目录大小)-CSDN博客

  • 代码示例

编程练习题18_29FileCount.java

package chapter_18;import java.io.File;
import java.util.ArrayList;
import java.util.Scanner;public class 编程练习题18_29FileCount {public static void main(String[] args) {System.out.print("Enter a directory or a file: ");Scanner input = new Scanner(System.in);String directory = input.nextLine().replaceAll("\\\\", "//");System.out.println("There are "+FileCount(new File(directory)) + " files");input.close();}public static int FileCount(File file){int count = 0;ArrayList<File> files = new ArrayList<File>();files.add(file);while(!files.isEmpty()) {ArrayList<File> newList = new ArrayList<File>();for(File f : files) {if(f.isFile())count ++;else {File[] fileList = f.listFiles();if(fileList != null) {for(File f2:fileList){if(f2.isDirectory())newList.add(f2);else count ++;}}}}files = newList;}return count;}}
  • 输出结果
Enter a directory or a file: C:\Users\Lenovo\eclipse-workspace\JavaFX\src\Text
There are 54 files

 

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • xml重点笔记(尚学堂 3h)
  • zookeeper向管控平台上报状态
  • java序列化对象后读取数据错误的问题
  • 前端大模型入门:掌握langchain的核心Runnable接口(一)
  • Redis---卸载Redis
  • LeetCode 876
  • Window Server 2019+ 安装 Docker
  • 【系统架构设计师-2014年真题】案例分析-答案及详解
  • muduo - 概要简述
  • 不抬头看路会回归那世
  • 数据结构-3.2.栈的顺序存储实现
  • 基于Python的自然语言处理系列(14):TorchText + biGRU + Attention + Teacher Forcing
  • 深入理解Go语言的方法定义与使用
  • sqli-lab靶场学习(二)——Less8-10(盲注、时间盲注)
  • 前端开发之迭代器模式
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • 08.Android之View事件问题
  • ES6之路之模块详解
  • express如何解决request entity too large问题
  • git 常用命令
  • js数组之filter
  • js作用域和this的理解
  • Lucene解析 - 基本概念
  • Spring声明式事务管理之一:五大属性分析
  • ucore操作系统实验笔记 - 重新理解中断
  • Vue 重置组件到初始状态
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 从tcpdump抓包看TCP/IP协议
  • 后端_ThinkPHP5
  • 树莓派 - 使用须知
  • 物联网链路协议
  • 一道闭包题引发的思考
  • 一些css基础学习笔记
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • ​ssh免密码登录设置及问题总结
  • ​补​充​经​纬​恒​润​一​面​
  • ​马来语翻译中文去哪比较好?
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • #HarmonyOS:Web组件的使用
  • (1)Jupyter Notebook 下载及安装
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (el-Date-Picker)操作(不使用 ts):Element-plus 中 DatePicker 组件的使用及输出想要日期格式需求的解决过程
  • (libusb) usb口自动刷新
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (七)Knockout 创建自定义绑定
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (一)Docker基本介绍
  • (转)Linux整合apache和tomcat构建Web服务器
  • (转)项目管理杂谈-我所期望的新人
  • * CIL library *(* CIL module *) : error LNK2005: _DllMain@12 already defined in mfcs120u.lib(dllmodu
  • .net core使用EPPlus设置Excel的页眉和页脚
  • .net 连接达梦数据库开发环境部署
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)