「java递归便利」java递归什么意思

博主:adminadmin 2022-12-18 18:12:08 61

本篇文章给大家谈谈java递归便利,以及java递归什么意思对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 如何递归遍历多重目录下的指定格式文件复制到目标目录并改格式

只考虑文件就可以,文件夹什么的 只要在创建文件时创建路径,不存在的就创建就好了

JAVA遍历一个文件夹中的所有文件---(递归)

public void traverseFolder2(String path) {

File file = new File(path);      

if (file.exists()) {

File[] files = file.listFiles();          

if (null == files || files.length == 0) {

System.out.println("文件夹是空的!");              

return;

} else {              

for (File file2 : files) {                  

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

traverseFolder2(file2.getAbsolutePath());

} else {

System.out.println("文件:" + file2.getAbsolutePath());

}

}

}

} else {

System.out.println("文件不存在!");

}

}

扩展资料

public void traverseFolder1(String path) {      

int fileNum = 0, folderNum = 0;

File file = new File(path);      

if (file.exists()) {

LinkedListFile list = new LinkedListFile();

File[] files = file.listFiles();          

for (File file2 : files) {              

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);                  

foldeNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

File temp_file;          

while (!list.isEmpty()) {

temp_file = list.removeFirst();

files = temp_file.listFiles();              

for (File file2 : files) {                  

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);

folderNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

}

} else {

System.out.println("文件不存在!");

}

System.out.println("文件夹共有:" + folderNum + ",文件共有:" + fileNum);

}

参考资料:百度百科 Java

java递归和循环的区别

递归可以遍历整棵树(或者当前枝干的所有下属节点),即使树的层数未知也能最终遍历出所有节点;

循环则只能遍历同一层的所有节点,如果下属节点的层数已知或只需要遍历有限层数的节点,那么通过多重循环也可以实现遍历多层节点的目的,但循环无法对层数未知的树结构进行遍历。

java 如何递归遍历一个文件夹下的所有文件

代码如下:

import java.io.File;

public class App {

static void list(String path) {

File dir = new File(path);

File[] files = dir.listFiles();

if (files != null  files.length  0) {

for (File file : files) {

if (file.isFile()) {

System.out.println(file.getAbsolutePath());

} else if (file.isDirectory()) {

list(file.getPath());

}

}

}

}

public static void main(String[] args) {

list("D:\\temp");

}

}

Java递归遍历集合

首先把这张表的所有数据查询出来放到一个集合中(集合为List1),然后遍历这个集合,先根据集合List1中的父编号查询到一个集合 ,这样把list1遍历的对象和根据父编号查询到的集合构建问一个对象放到集合中就可以达到你的目的了,一下为代码说明:

import java.util.List;

public class dto1 {

private things thing;//当前编号得到的对象

private List list;//父编号查询到的集合

public things getThing() {

return thing;

}

public void setThing(things thing) {

this.thing = thing;

}

public List getList() {

return list;

}

public void setList(List list) {

this.list = list;

}

}

*********************************************************************************

public class things {

private int number;

private String name;

private int parentnumber;

public int getNumber() {

return number;

}

public void setNumber(int number) {

this.number = number;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getParentnumber() {

return parentnumber;

}

public void setParentnumber(int parentnumber) {

this.parentnumber = parentnumber;

}

}

**************************************************************************

import java.util.ArrayList;

import java.util.List;

public class action {

public static void main(String[] args) {

List getlist=new ArrayList();

List list=new ArrayList();//list为你根据编号查询出来的集合

for(int i=0;ilist.size();i++)

{

things thing=(things)list.get(i);

int parentbumber=thing.getParentnumber();//得到父编号

List li=new ArrayList();//此li为根据父编号parentbumber查询到的集合

dto1 dto=new dto1();

dto.setThing(thing);

dto.setList(li);

list.add(dto);//把当前编号的对象和父编号得到的集合构建成一个dto放到最终你要的list中

}

}

}

关于java递归便利和java递归什么意思的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-18,除非注明,否则均为首码项目网原创文章,转载请注明出处。