java递归如何退出_递归删除数组某个元素

java递归如何退出_递归删除数组某个元素###Java递归删除文件publicstaticvoidmain(String[]args){Filefile=newFile(“D:\\dir”);recursiveDelete(file);}###recursiveDelete方法privatestaticvoidrecursiveDelete(Filefile){if(file.isDirectory())…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

###Java递归删除文件

public static void main(String[] args) {

File file = new File(“D:\\dir”);

recursiveDelete(file);

}

###recursiveDelete方法

private static void recursiveDelete(File file) {

if (file.isDirectory()) {

File[] list = file.listFiles();

for (File f : list) {

recursiveDelete(f);

}

// 删除完文件夹内的文件后删除自身

file.delete();

} else {

file.delete();

}

}

###=================================================================== ###同理,递归删除数据库里的商品目录

public int deleteGoodsCategory(Long goodsCategoryId) {

return recursive(goodsCategoryId);

}

private int recursive(Long goodsCategoryId) {

int r = 0;//此统计结果不准确

if (hasSubCategory(goodsCategoryId)) {

//删除子类目

List list = goodsCategoryDao.selectSubGoodsCategory(goodsCategoryId);

for (GoodsCategory g : list) {

recursive(g.getId());

}

goodsCategoryDao.deleteByPrimaryKey(goodsCategoryId);//删除完子类目后删除自身

r++;

} else {

goodsCategoryDao.deleteByPrimaryKey(goodsCategoryId);

r++;

}

return r;

}

public boolean hasSubCategory(Long goodsCategoryId) {

return goodsCategoryDao.hasSubCategory(goodsCategoryId) > 0;

}

###goodsCategoryDao

int deleteByPrimaryKey(Long id);

//delete from xy_goods_category where id = #{id}

int hasSubCategory(Long goodsCategoryId);

// select count(1) from xy_goods_category where parent_id = #{goodsCategoryId}

/**

* 某个目录的子目录列表

*/

List selectSubGoodsCategory(Long goodsCategoryId);

// select * from xy_goods_category where parent_id = #{goodsCategoryId}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192092.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 电脑爱好者必须懂得的电脑简单英语单词[通俗易懂]

    电脑爱好者必须懂得的电脑简单英语单词[通俗易懂]使用电脑必懂的53个英文单词和缩写!  ·PC:个人计算机PersonalComputer  ·CPU:中央处理器CentralProcessingUnit  ·CPUFan:中央处理器的“散热器”(Fan)  ·MB:主机板MotherBoard  ·RAM:内存RandomAccessMemory,以PC-代号划分规格,如PC-133,PC-1066,PC-27…

    2022年6月3日
    37
  • B样条曲线与贝塞尔曲线学习笔记

    B样条曲线与贝塞尔曲线学习笔记贝塞尔曲线基本公式:B(t)=∑i=0n(in)Pi(1−t)n−iti,t∈[0,1]基本公式:B(t)=\sum_{i=0}^{n}\Big({_i^n}\Big)P_i(1-t)^{n-i}t^i,t\in[0,1]基本公式:B(t)=i=0∑n​(in​)Pi​(1−t)n−iti,t∈[0,1]三次贝塞尔曲线:B(t)=P0(1−t)3+3P1t(1−t)2+3P2t2(1−t)…

    2022年6月18日
    27
  • SecondCopy 2000 简单说明

    SecondCopy 2000 简单说明

    2021年8月7日
    65
  • HackBar破解(谷歌、火狐)-2020.0203 chrome (搬运工)[通俗易懂]

    HackBar破解(谷歌、火狐)-2020.0203 chrome (搬运工)[通俗易懂]1.谷歌打开Chrome插件列表,查看Hackbar的插件ID:djmoeo……,在文件搜索里搜这段字符,我这里用的是Everything。Everything搜索id找到djmoeo找到\2.2.4_0\theme\js找到disable_hackbar,注释掉下面的chrome.storage.local.get([‘license’]函数,然后重启浏览器OK完链接:https://www.lanzous.com/i9jc7b…

    2022年6月3日
    69
  • Python学习笔记(15)-Python代码转换为exe可执行程序详解

    Python学习笔记(15)-Python代码转换为exe可执行程序详解一,简介Python写完程序,要靠命令执行那么行,太低调了,还不华丽了。再说别人的电脑,都没有Python库,怎么执行,还能不能愉快的一起玩耍了。所以哪怕只会写一个HelloWorld,也要弄成exe程序,方便伟大的代码传播事业。其实很简单,有一个现成的pyInstaller工具,直接用就是了。二,pyInstaller安装配置1,打开网址:pyInstalller下载网址如图:因为我的Pyth

    2022年6月1日
    50
  • 罗技k580切换设备_罗技键盘怎么连接电脑

    罗技k580切换设备_罗技键盘怎么连接电脑插接收器是默认长按F11的,蓝牙是默认长按F12电脑:MacbookPro、联想台式机目的:Mac连蓝牙,联想连接收器步骤:首先进驱动下载地址下载罗技驱动插上接收器进入驱动软件,长按键盘F11,将键盘与联想成功连接,此时联想绑定的为F11长按F12,打开Mac蓝牙,Mac跳出提示(用K580输入6个数字加enter键,然后点击连接),可与Mac成功连接,此时Mac绑定的是F12两台电脑成功连接后,按F11可切换到联想电脑,按F12可切换到Mac…

    2022年10月15日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号