黑马程序员技术交流社区

标题: 学习java,就是要慢慢学会自己验证一些方法的作用 [打印本页]

作者: Foundmoon    时间: 2015-6-24 20:57
标题: 学习java,就是要慢慢学会自己验证一些方法的作用
/*学习java,就是要慢慢学会自己验证一些方法的作用,以下是我对
* FilenameFilter 和FileFileter的验证:两个个过滤器结构都没有对外公开子类,在File学习阶段,主要是在File类的listFiles(FilenameFilter filter)
* 和listFiles(FileFilter filter) 两个方法中传参使用,接口内部只有一个方法accept,参数分别为(File dir, String name)和(File pathname)
* 所以,想要创建对象就必须重写accept方法。
*           特地说这两个借口的原因,也就在于accept方法的参数,因为我们在创建对象时,没有直接调用accept方法,刚一接触,最茫然的就是此方法的参数的意义
*           参数 File dir,其实就是你所建立的File的对象(即封装成File对象的路径),而参数String name则是File对象路径下的文件名。而参数File pathname
*           是File对象路径下的所有File子对象。
* 比较而言,在使用时前者更加简单。以下为两个接口使用的实例。实例中有专门的打印语句验证。method_1()和method_2()的结果是* 一样的
*/
import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
public class Test
{
        public static void main(String[] args) {
                method_1();
        }
        static void method_1(){
                File file=new File("E:\\My Applications");
                File []fs=file.listFiles(new FilenameFilter(){
                        public boolean accept(File f,String s){
                                System.out.println("==="+f);
                                System.out.println(s);
                                return s.toLowerCase().endsWith(".txt");
                        }
                });
                for(File f:fs)
                        System.out.println(f);
        }
        static void method_2(){
                File file=new File("E:\\My Applications");
                File []fs=file.listFiles(new FileFilter(){
                        public boolean accept(File f){
                                System.out.println("---"+f);
                                String s=f.getName();
                                return s.toLowerCase().endsWith(".txt");
                        }
                });
                for(File f:fs)
                        System.out.println(f);
        }
}

作者: keto    时间: 2015-6-24 21:20
学习了,感谢楼主的分享。。。。。。。
作者: 十五号的人生    时间: 2015-6-24 21:25
长知识了  




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