我有一個文件數組。根據file.lastModified對文件[]的數組進行排序
File[] toSort = videoFiles.listFiles();
我需要根據lastModified對它們進行排序。我如何在Android中實現它。
我有一個文件數組。根據file.lastModified對文件[]的數組進行排序
File[] toSort = videoFiles.listFiles();
我需要根據lastModified對它們進行排序。我如何在Android中實現它。
試着這麼做:
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());
}
});
你需要一個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);
這是從API19只。我使用API 16作爲最小 –
你能解釋一下我應該如何把它分配給我的新陣列?我的意思是文件[] sortedArray =? –
你不需要將它分配給任何東西。原始數組對象將被排序。 https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort(java.lang.Object []) – Bobby
這樣做後沒有區別 –