日期:2014-05-20  浏览次数:20686 次

求大神指导,这里的acceptCondition是什么意思,有什么作用
import java.io.*;
class FileAccept implements FilenameFilter{
       String str=null;
        FileAccept(String s){
         str="."+s;
        }
        public boolean accept(File dir,String name){
         return name.endsWith(str);
        }
}

public class F{
public static void main(String args[]){
File dir=new File("D:\\www");
File deletedFile=new File(dir,"D.java");
    FileAccept acceptCondition=new FileAccept("java");//这里的acceptCondition是什么意思,有什么作用。
    File fileName[]=dir.listFiles(acceptCondition);
    for(int i=0;i<fileName.length;i++){
      System.out.println("文件:"+fileName[i].getName());
    }
  boolean boo=deletedFile.delete();
   if(boo){
  System.out.println("文件:"+deletedFile.getName()+"被删除");
}
}
}





提问:这里的acceptCondition是什么意思,有什么作用。
------解决方案--------------------
相当于是一个过滤器。
FileAccept acceptCondition=new FileAccept("java")这里是定义一个过滤器FilenameFilter
File fileName[]=dir.listFiles(acceptCondition);这里是取出“D:\\www”目录下所有“.java”的文件。
------解决方案--------------------
LZ,
你的 acceptCondition,在这里就一个对象名称,是根据你上面  FileAccept 这个类实例化过来的。

这个名称你可以随便取,test,A,B的都行,之后用test.方法(),调用FileAccept 的public的方法!

你这两个类是联合的!
------解决方案--------------------
这个东西看api最清楚