黑马程序员技术交流社区

标题: File的listFiles()方法源代码问题 [打印本页]

作者: alive    时间: 2014-7-23 12:46
标题: File的listFiles()方法源代码问题
本帖最后由 alive 于 2014-7-25 22:04 编辑

为什么最后往集合添加元素时,是 files.add(new File(s, this))?不应该this是目录,s是目录或文件名么?

qqq.png (10.87 KB, 下载次数: 147)

qqq.png

作者: a6511631    时间: 2014-7-23 16:01
所以你觉得应该是files.add(new File(this, s))吗?
作者: a6511631    时间: 2014-7-23 16:04
你认为s是目录或者文件名的依据是什么?第二行list()方法的源码都没有。
作者: alive    时间: 2014-7-23 16:36
a6511631 发表于 2014-7-23 16:01
所以你觉得应该是files.add(new File(this, s))吗?

调用File的list的方法得到不是,得到的是文件或者目录名,this代表代表调用listFile的对象。list列出的应该是this对象所表示的目录下的目录或者文件。

QQ拼音截图1.png (5.04 KB, 下载次数: 96)

QQ拼音截图1.png

QQ截圖2.png (2.79 KB, 下载次数: 143)

QQ截圖2.png

作者: fantacyleo    时间: 2014-7-24 01:38
你没发现这个构造方法在API文档里根本不存在么。。。其实File类有一个私有的构造方法:private File(String child, File parent)
作者: alive    时间: 2014-7-24 01:55
fantacyleo 发表于 2014-7-24 01:38
你没发现这个构造方法在API文档里根本不存在么。。。其实File类有一个私有的构造方法:private File(String ...

嗯 在源代码中找到了 谢谢了

findit.png (9.09 KB, 下载次数: 80)

findit.png

作者: wisely    时间: 2014-7-24 02:43
mark一下




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