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

求大神指导,这里的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最清楚
------其他解决方案--------------------
那您的意思是这两步是合在一起的,不可以单独理解吗
------其他解决方案--------------------
还有,我想问一下,acceptCondition它本身有什么意思,有什么用法,不知您能帮我解答一下吗
------其他解决方案--------------------
我还想追问一下,File的锅虑器的作用