2015-06-05 93 views

回答

2

試着這麼做:

File[] toSort = videoFiles.listFiles(); 

Arrays.sort(toSort, new Comparator<File>(){ 
    public int compare(File f1, File f2) { 
     return Long.valueOf(f1.lastModified()).compareTo(f2.lastModified()); 
    } 
}); 
+0

你能解釋一下我應該如何把它分配給我的新陣列?我的意思是文件[] sortedArray =? –

+0

你不需要將它分配給任何東西。原始數組對象將被排序。 https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort(java.lang.Object []) – Bobby

+0

這樣做後沒有區別 –

0

你需要一個Comparator進行排序的方式,你希望:

public class LastModifiedComparator implements Comparator<File> { 
    @Override 
    public int compare(File f1, File f2) { 
     return Long.compare(f1.lastModified(), f2.lastModified()); 
    } 
} 

那麼你可以使用Arrays.sort(T[], Comparator)

LastModifiedComparator comp = new LastModifiedComparator(); 
Arrays.sort(toSort, comp); 
+0

這是從API19只。我使用API​​ 16作爲最小 –

相關問題