2011-03-09 70 views
0

so 我的程序获取目录,根据不同的过滤器过滤文件,然后执行多个操作并按照所需顺序返回文件。 我认为这是没有必要在我过滤之前,因为然后我会排序很多文件没有。在文件排序后,我将它们返回到TreeSet中。为文件存储选择最佳数据结构

所以,我的问题是,什么是最好的数据结构来存储文件之前,我把它们按顺序?我最好的意思是在运行时间方面。 谢谢,yotam

+1

可能是ArrayList。你不必返回一个TreeSet:Collections.sort(list)足够好 – iluxa 2011-03-09 17:10:45

回答

0

我同意iluxa,只是使用ArrayList。当你排序时,你可以使用Collections.sort,就像iluxa提到的那样,但是如果你有一个File对象列表(而不仅仅是文件名字符串),那么你需要通过第二个参数传递给sort方法。这将是比较器的匿名子类,如下所示:

Collections.sort(listOfDateObjects, new Comparator<File>() { 

    @Override 
    public int compare(File o1, File o2) { 
     // put your comparison logic here 
    } 
}); 
0

一个简单的数组应该没问题。在循环访问文件数组时,任何通过您的过滤器的内容都会添加到您要返回的TreeSet

+0

哦,我不能,要求说先过滤器然后添加到treeSet – yotamoo 2011-03-09 20:04:41

+0

@yota,它仍然过滤之前,你添加到集。如果您还没有提到要求,请更新您的问题。 – jzd 2011-03-09 20:07:29