安卓開發,把內存卡的文件按時間排列的一種方法

關於排序問題,正常應該用Collections,實際上我也用了。開始用,一切正常,用著用著,不知怎麼就出現錯誤了。於是就參考資料,搞了下面這個排序方法。

安卓開發,把內存卡的文件按時間排列的一種方法

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>


分享到:


相關文章: