在这种情况下,我必须使用此方法对数百个 DocumentFile 对象进行排序:
DocumentFile[] files = documentFile.listFiles();
ArrayList<DocumentFile> docFiles = new ArrayList<DocumentFile>();
Arrays.sort(files, new Comparator() {
public int compare(Object o1, Object o2) {
if (((DocumentFile)o1).lastModified() < ((DocumentFile)o2).lastModified()) {
return -1;
} else if (((DocumentFile)o1).lastModified() > ((DocumentFile)o2).lastModified()) {
return +1;
} else {
return 0;
}
}
});
if (files != null) {
for (DocumentFile file : files) {
if (!docFiles.contains(file))
docFiles.add(file);
}
但是,这花费的时间太长,大约需要 MINUTE 200 个 DocumentFile 对象。我无法理解这种生命课程如此缓慢。它必须更多地用于最近的范围存储更改。
任何人都知道如何更快地完成这个排序过程?