黑马程序员技术交流社区

标题: 【厦门校区JavaEE就业5期-每日总结】File、递归、FileFilter [打印本页]

作者: 厦门校区    时间: 2018-12-29 17:33
标题: 【厦门校区JavaEE就业5期-每日总结】File、递归、FileFilter
今天我们学习了File类和递归,请根据自己理解回答下面问题:
1.绝对路径和相对路径的区别?
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
作者: zhuyiming    时间: 2018-12-29 19:38
1.绝对路径和相对路径的区别?绝对路径是:
将路径完全写死了!如果以后有需要更改项目名时,则需要去更改代码!
相对路径是:
在同项目目录下时,则可以省略从盘符到项目的根目录,这样就算以后更改项目名称,也不需要去修改代码!
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

1/当前方法内调用自己的这个情况
2/递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
构造方法,禁止递归
3/当递归判断的条件为true的时候结束当前递归  



作者: 赵烈刚    时间: 2018-12-29 19:48
1.绝对路径和相对路径的区别?
绝对路径是一个以盘符开头的完整路径;相对路径是一个项目的简化路径,,不用考虑项目名称的问题还可以简化代码量。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归就是在自己的方法内调用自己的方法,分为直接递归和间接递归;在一定的限定条件保证递归能够停下来和递归次数不多的时候可以用到递归,否则会发生栈内存溢出;在递归方法内判断条件结束时结束
作者: lj478360767    时间: 2018-12-29 20:09
今天我们学习了File类和递归,请根据自己理解回答下面问题:
1.绝对路径和相对路径的区别?
绝对路径是表示真实的在硬盘中存储的位置,以盘符开始,是一个完整的路径;
相对路径是相对于绝对路径一种便捷表示,表示相对于项目目录的位置,项目路径加上相对路径就是完整的绝对路径,只不过在开发过程中我们为了方便,使用相对路径的格式.

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归作为一种算法被广泛用在程序设计语言中,它是直接或间接的调用自己。
递归算法一般用于解决三类问题:
  1)数据的定义是按递归定义的。
  2)问题解法按递归算法实现。
  3)数据的结构形式是按递归定义的。
当方法被最后一次调用时,递归结束.为了保证递归能停下来,在使用递归时,要注意这些方面:
1)递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
2)在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
3)构造方法,禁止递归
作者: 续扬    时间: 2018-12-29 20:56
1.绝对路径和相对路径的区别?
绝对路径:是一个完整的路径,写死不会改变的路径,以盘符开始的路径
相对路径:是一个简化的路径,当前项目的根路径,提高项目的可移植性
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
使用当前方法调用自己
当某个特性可以被重复执行时,就可以用递归来解决。
当方法内条件满足时,结束递归
作者: Wujainwei    时间: 2018-12-29 21:08
1.绝对路径和相对路径的区别?
绝对路径:从盘符开始的
相对路径:不从盘符开始,节省代码,修改项目路径也简单
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归: 方法自己调用自己。
调用方法时,方法的主体不变,每次调用方法的参数不同,可以使用递归。
当判断中执行的return语句中不再有递归时,会结束
作者: 吴少华    时间: 2018-12-29 21:17
1.绝对路径和相对路径的区别?
绝对路径是带有根目录的带有根盘路径的完整路径
相对路径是省略项目前的路径,相较于绝对路径显示比较简便显示,但是实际目录还是绝对路径
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归就是自己调用自己的方法;
需要重复进行某种方法且方法数据按照某种规律变化的时候可以用递归
结束的时机由自己限定方法的数据达到某种程度时停止,或者出现异常被虚拟机停止。
作者: 许晓明    时间: 2018-12-29 21:23
1.绝对路径和相对路径的区别?
答:绝对路径指的是写死的,不会改变的路径,相对路径指的是相对的是当前项目的路径。
两者的差别在于路径的起始点是否从盘符开始。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
答:递归指的是方法自己在方法内通过间接方式或者直接方式调用自己。
递归的使用情况:当调用方法时,方法的主体不变,每次调用方法的参数不同,可以使用递归
结束递归:平时在使用递归的时候,递归都是有一定条件限定的,当不满足条件的时候递归就会结束。必须要注意的是,递归的次数不能太多,不然会造成栈内存溢出,而且限定条件一定要存在,不然会无限制的递归下去。在构造方法中不能使用递归。

作者: 杨鑫棋    时间: 2018-12-29 21:36
1.绝对路径和相对路径的区别?

绝对路径:写死不会发生改变的路径。

相对路径:相对的是当前项目的路径,可以省略根目录,不用考虑项目名称问题。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?

递归就是在当前方法内调用自己的这种现象。当要打印多级目录的时候可以使用递归,也可以用递归进行阶乘运算。当满足条件限定的时候,递归就会停下来。
作者: 陈基林    时间: 2018-12-29 21:37
1.绝对路径和相对路径的区别?绝对路径是由盘符开始;相对路径是不从盘符开始的,省略的是盘符到项目根路径。              
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

递归就是方法自己调用自己;当需要多次使用这个方法的并且每次调用方法的时候参数都有一定变化的时候可以使用递归;如果没有限定递归次数的语句或者限定递归次数过多的话都会发生栈内存溢出错误,结束程序,递归自然也就结束了,构造方法也不能使用递归。

作者: 陈彬    时间: 2018-12-29 21:38
1.绝对路径和相对路径的区别?   绝对路径就是从盘符开始的路径,是一个完整的路径。
   相对路径:相对的是项目路径而言,这是一个更便捷的路径,省略的是盘符到项目的路径
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

   递归就是方法自己调用自己,如果解决问题的方法适合使用递归时可以使用。达到给定的条件时,结束时是从最后一次调用开始往前推。

作者: 赖熙蒙    时间: 2018-12-29 21:38
1.绝对路径和相对路径的区别?答:绝对路径:从盘符开始的路径,这是一个完整的路径。
相对路径:是从项目目录之后开始的路径,这是一个便捷的路径,开发中经常使用。  


2.什么是递归?什么情况下会用到递归?什么时候结束递归?


答:递归指的是在方法内调用自己。当需要对对象重复执行某个方法的时候就可以使用递归。当主动使用条件限定且在达到限定的条件时,会结束递归。当发生栈内存溢出的时候,也会结束递归。
注意:递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。

作者: 李灵杰    时间: 2018-12-29 21:41
1.绝对路径和相对路径的区别?      绝对        绝对path是从盘符开始的        写死一个绝对不会改变的path
                写死!!!!!! 百分之百能找到这个路径的
      表示一个完整的不可变的路径
        弊端
                不方便迁移
                如果project改name了就要改path
       相对
        相对path不是从盘符开始的        相对与当前项目的路径
        项目的根目录就可以不用出现了,可以省略
        好处
                减少我们代码的编写量
                不用考虑项目名称问题
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

     递归分为两种,直接递归和间接递归。
        直接递归称为方法自身调用自己。
        间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。
                结果还是 A 方法调用 A 方法

当调用方法的时候,方法的主体不变,每次调用方法的参数不同,可以使用递归

递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
        Exception in thread "main" java.lang.StackOverflowError



作者: 刘荣城    时间: 2018-12-29 21:41
1.绝对路径和相对路径的区别?
从盘符开始的路劲就是绝对路径
从项目文件夹开始的路径就是相对路径
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归就是指在当前方法内调用自己的这种现象
次数不能太多,然后会报错
作者: 周章强    时间: 2018-12-29 21:44
1.绝对路径和相对路径的区别?

区别:(1)绝对路径是从盘符开始的完整路径;相对路径是从当前项目的根路径开始的简化版。
(2)绝对路径是写死的路径,不能改变;相对路径方便路径的修改。
       
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

递归:方法自己调用自己。
使用时机:当需要只是改变(参数)重复调用某个方法的(方法体)时候,并且不能是构造方法。
结束时机:使用递归必须设置结束条件(且不能太大),当满足设置的结束条件就会结束。
作者: Chidori    时间: 2018-12-29 21:44
1.绝对路径和相对路径的区别?绝对路径是从盘符开始的路径
相对路径省略了盘符到项目的根路径
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

递归就是方法自己调用自己
当方法本身要反复使用的方法于自身相同或者方法主体与自身相同,只是参数列表不同,就可以使用递归
使用递归要给递归做一些限定,不能无限递归,否则会发生栈内存溢出,即使给出限定次数也不能过多,否则也会发生栈内存溢出


作者: 骆颖权    时间: 2018-12-29 21:45
本帖最后由 骆颖权 于 2018-12-29 21:48 编辑

1.绝对路径和相对路径的区别?
绝对路径:是一个完整的路径,以盘符开始的路径。
相对路径:是一个简化的路径,相对指的是相对于当前项目的根目录。如果使用当前项目的根目录,路径可以简化书写。


2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归:指在当前方法内调用自己的这种现象。
递归可分为直接递归和间接递归:
                       直接递归称为方法自身调用自己。
                       间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。
当我们要解决的问题有着重复执行的操作的时候,可以考虑使用递归。
当满足条件限定的时候,递归就会停下来。



作者: 苏志祥    时间: 2018-12-29 21:45
1.绝对路径和相对路径的区别?
绝对路径是从盘符开始的路径
相对路径是不从盘符开始的,省略的是盘符到项目根路径,能够根据当前的项目名称,自动的不全路径,提高适应性。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归就是方法调用自己的方法,程序进入循环状态。
递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
构造方法,禁止递归
作者: ab8846254    时间: 2018-12-29 21:49
1.绝对路径和相对路径的区别? 答:绝对路径,为完整路径,相对路径是相对于当前项目的路径。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?

答:递归,为方法本身调用方法本身,第一次调用需要由main方法传进一个参数,当达到一定条件值的时候递归结束,
       需要进行多次循环调用方法本身判断的时候,当满足出口条件的时候结束递归

作者: 陈佳鹏    时间: 2018-12-29 21:49
1.绝对路径从盘符开始,相对路径相对于当前的项目文件夹。
2.递归指方法直接或者间接的调用自己本身;解决不同对象具有前后关系且互相联系时可以用到递归;当递归判断的条件为true的时候结束当前递归  。
作者: 陈益源    时间: 2018-12-29 21:50
1.绝对路径和相对路径的区别?
绝对路径:从盘符开始,路径已经写死
相对路径:省略了盘符到项目的根路径,相对比较灵活,可以不用考虑项目名称的问题,系统会根据当前项目自动补全

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归:方法自己调用自己
当调用方法的时候,方法的主体不变,每次调用方法的参数不同,可以使用递归
当判断条件为true时递归结束
作者: 吴洪标    时间: 2018-12-29 21:51
1.绝对路径和相对路径的区别?
绝对路径就是把路径写死,从盘符开始一直写到所需的文件或文件夹为止;
相对路径则省略了前面部分,即从盘符开始到项目所在的文件夹。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
(1)递归就是方法调用自己,分为直接递归和间接递归。直接递归是方法在自己的方法体内调用自己,间接递归是指A放法调用其他方法,而其他方法再调用A方法;
(2)满足以下条件时可以考虑递归:
a.解决问题时,可以把一个问题转化为一个新的问题,而这个新的问题的解决方法仍与原问题的解法相同,只是所处理的对象有所不同,这些被处理的对象之间是有规律的递增或递减;
b.可以通过转化过程使问题得到解决;
c.有一个明确的结束递归的条件,否则递归将会无止境地进行下去,直到耗尽系统资源。
然而,使用递归方法需非常谨慎,否则很容易对系统资源造成极大的浪费。
(3)当递归方法体内有一个分支不调用自身,且这种情况能满足时,即结束递归。


作者: 董志超Eric    时间: 2018-12-29 21:52
1.绝对路径和相对路径的区别?
答;绝对路径是从盘符开始的完整的路径。相对路径是是相对于项目文件夹来说的路径,和绝对路径相比,绝对路径书写时少了盘符到项目名文件夹(包括)的书写。
相对路径在虚拟机处理时会补全。相对路径的优势是使得文件能够适应迁移。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
答:递归是方法自己调用自己(直接或间接),在有限的次数内进行调用(否则栈内存溢出)。递归用在重复使用某一个方法的时候,比如累加、阶乘、遍历多级文件夹等。
在最后一次调用方法的时候要结束递归,对于不同情况下使用的递归一定要明白什么时候停止递归,以及调用方法的目的。




作者: 艾卡西亚的惊喜    时间: 2018-12-29 21:55
本帖最后由 艾卡西亚的惊喜 于 2018-12-29 22:04 编辑


林少伟

作者: 杨馥榕    时间: 2018-12-29 21:56
本帖最后由 杨馥榕 于 2018-12-29 21:58 编辑

1.绝对路径和相对路径的区别?
答:绝对路劲:是从盘符(就是我们C盘D盘等等的一些盘)开始的路径,写死的一个不会改变。
相对路径:不从盘符开始的,省略的是盘符到项目根路径,当前项目的路径
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
答:递归:就是相当于循环一样的,一个方法自己去调用自己就是递归。
在文件过滤器时候我们就用到了递归,把我需要的文件从文件夹一个个去过滤获得我需要的文件
当我们的条件满足时候,用一个retrun结束关键字去结束递归!



作者: Java中的莫Q哇啦    时间: 2018-12-29 21:57
1.绝对路径和相对路径的区别?

绝对路径是从盘符开始的路径。

相对路径是不从盘符开始的,省略的是盘符到项目根路径。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?

递归就是指当前方法中调用自己方法的现象。当要求有规律了性的实物,或者遍历文件夹中的所有文件的时候。当达到我们想要达到的目的的时候就结束递归,我们的目的,就是递归停止的条件。
=-------------黄成成
作者: 黄嘉宏    时间: 2018-12-29 21:57
1.绝对路径和相对路径的区别?绝对路径是从盘符开始的路径,相对路径是从根目录后开始的路径。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?


递归指在当前方法内调用自己的现象。排序会用到递归。达到指定递归次数时结束递归。

作者: 李柏刚    时间: 2018-12-29 21:59
1.绝对路径和相对路径的区别?   绝对路径是从盘符开始完整路径。
   相对路径省略了盘符到项目的路径。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
   方法直接调用方法自身,或间接调用自身叫做递归。
   当需要并且能够使用方法的运行结果作为参数列表去循环调用方法本身,达到我们的运算需求,就可以使用递归,前提要明确递归停止条件,和递归目的。    满足退出条件,就结束递归。

作者: 苏阿合    时间: 2018-12-29 22:59
1.绝对路径和相对路径的区别?
绝对路径:从盘符开始的路径,这是一个完整的路径
相对路径:相对于项目目录的路径。省略了从盘符开始到当前项目下的路径
区别:
绝对路径将文件路径写死,不易发生变动。
而相对路径是相对于项目路径存在的,提高了项目的可移植性。

2.什么是递归?什么情况下会用到递归?什么时候结束递归?
递归是当前方法自己调用自己。
递归分为:直接递归,间接递归
要重复调用方法时,且方法的主体不变,每次调用方法的参数不同,可以使用递归
递归的注意事项:
(1)递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出
(2)在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出
(3)构造方法,禁止递归
递归什么时候结束:当递归调用的方法到最后一个方法的方法体执行完后,就开始被调用方法逐步出栈。

作者: 林文悦    时间: 2018-12-29 23:15
1.绝对路径和相对路径的区别?
绝对路径:写死的路径,从盘符开始到结束的路径;
相对路径:盘符到项目的路径省略不写。
2.什么是递归?什么情况下会用到递归?什么时候结束递归?
方法自己调用自己为递归。
       1.解决问题时,可以把一个问题转化为一个新的问题,而这个新的问题的解决方法仍与原问题的解法相同,只是所处理的对象有所不同,这些被处理的对象之间是有规律的递增或递减;


       2.可以通过转化过程使问题得到解决;


结束递归必定要有一个明确的结束递归的条件,否则递归将会无止境地进行下去,直到耗尽系统资源。也就是说必须要某个终止递归的条件。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2