安卓开发,把内存卡的文件按时间排列的一种方法

关于排序问题,正常应该用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>


分享到:


相關文章: