關於排序問題,正常應該用Collections,實際上我也用了。開始用,一切正常,用著用著,不知怎麼就出現錯誤了。於是就參考資料,搞了下面這個排序方法。
![安卓開發,把內存卡的文件按時間排列的一種方法](http://p2.ttnews.xyz/loading.gif)
public static List<file> px(List<file> l)/<file>/<file>
{
int len=l.size();
File temp;
for (int i = 0; i < len - 1; i++)
{
for (int j = 0; j < len - 1 - i; j++)
{
if (l.get(j).lastModified() <l.get>
{
temp = l.get(j);
l.set(j, l.get(j + 1));
l.set((j + 1), temp);
}
}
}
return l;
}
假如你讀取的文件保存在List中,當然其它如JsonArray,或String[]都可以。知道原理就能排列了。
舉例說明吧
假如獲取到的文件是2個
1. txt
2.jpg
所以長度len=2,循環次數是len-1=1,
當i=0,j=0,就會比較1. txt和2. jpg的修改時間,如果2. jpg的修改時間較大,就把1. txt放在一個叫temp的桌面上,用2. jpg佔1. txt的位置,再從桌面把1. txt放到2. jpg的位置上,這樣就實現了調換位置。
即是說,位置1的文件會和後面的每個文件比較,從而得到位置1的最大修改時間。其它同理。
說得有點思維混亂,不知有沒有說明白。歡迎評論。
/<l.get>閱讀更多 茂名阿信 的文章