站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题新人提问,想了2天没想通的问题【处子贴】

新人提问,想了2天没想通的问题【处子贴】

摘要: 新人提问,想了2天没想通的问题【处子贴】


import java.io.*;
/*
输出本目录下文件的文件名
*/
public class DirList
{
public static void main(String[] args)
{
try
{
File path = new File(-#34;.-#34;);
String[] list;
if (args.length ==0)
list = path.list();//若运行时在命令行种不给参数,则列出本目录下所有文件的名字
else
list = path.list( new DirFilter(args[0]));//若给出一个参数,则列出含有此参数的文件名
for (int i=0;i-#60;list.length ;i++ )
System.out.println(list[i]);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
class DirFilter implements FilenameFilter
{
String afn;
DirFilter(String afn){
this.afn = afn;
}
public boolean accept (File dir,String name) {//accept函数是怎么执行的,程序如何将参数传递给accept????
String f = new File(name).getName();
return f.indexOf(afn) != -1;
}
}
accept函数是怎么执行的,程序如何将参数传递给accept????为什么list = path.list( new DirFilter(args[0]));会自动调用accept()??


我来破处吧 呵呵 :)

list = path.list( new DirFilter(args[0]));

list方法会根据参数 new DirFilter(args[0]) 来判断是不是执行


哥们 可能还没有转过弯来 要适应计算机语言的思路


有意思!


^-^学习了,我去翻翻书去了


↑返回目录
前一篇: 看似很简单的问题且又不是很容易!
后一篇: 按钮的actionPerformed问题