自定义Filter过滤器知道怎么用,原理和比较器一样
import java.io.*;import java.util.*;interface MyFilenameFilter{public boolean myAccept(File dir,String name);}class MyFile{private File dir;MyFile(File dir){this.dir = dir;}public String[] myList(MyFilenameFilter filter){String[] arr = dir.list();ArrayList<String> al = new ArrayList<String>();for(int x=0; x<arr.length; x++){if(filter.myAccept(dir,arr[x]))al.add(arr[x]);}return al.toArray(new String[al.size()]);}}class MyFilenameFilterDemo{public static void main(String[] args) {File dir = new File("c:\");MyFile mf = new MyFile(dir);/*String[] arr = mf.myList(new MyFilenameFilter(){public boolean myAccept(File dir,String name){//System.out.println(new File(dir,name));return !(new File(dir,name).isHidden());}});*/for(String s: arr){System.out.println(s);}}}
?