如何在Android中反转列表的顺序?

时间:2015-04-15 07:12:55

标签: android list

我在Android上开发,我从文件夹中读取文件并放入列表。

该列表有两个值: 1.Name 2.Time

它可以像下面的代码一样显示List:

 for(int i=0;i<fileList.size();i++){
        Log.i("DownloadFileListTask", "file mName("+i+") = " + fileList.get(i).mName);
        Log.i("DownloadFileListTask", "file mTime("+i+") = " + fileList.get(i).mTime);
 }

日志如下:

file mName(0) = /DCIM/100__DSC/MOV_0093.LG1
file mTime(0) = 2015-04-15 14:47:46
file mName(1) = /DCIM/100__DSC/PICT0094.JPG
file mTime(1) = 2015-04-15 14:47:52
file mName(2) = /DCIM/100__DSC/MOV_0095.LG1
file mTime(2) = 2015-04-15 14:48:04
file mName(3) = /DCIM/100__DSC/MOV_0096.LG1
file mTime(3) = 2015-04-15 14:48:12
file mName(4) = /DCIM/100__DSC/MOV_0097.LG1
file mTime(4) = 2015-04-15 14:48:20
file mName(5) = /DCIM/100__DSC/MOV_0098.LG1
file mTime(5) = 2015-04-15 14:50:26

从日志中,早期时间是第一个对象。但是我希望改变它的顺序。

如何反转Android中列表的顺序?

2 个答案:

答案 0 :(得分:32)

使用Collections.reverse

List myOrderedList = new List(); // any implementation
Collections.reverse(myOrderedList);
// now the list is in reverse order

此外,如果您是将元素添加到列表中的人,则可以add the new items at the top列表,所以稍后您不必反转它:

List<Integer> myOrderedList = new List<>(); // any implementation
myOrderedList.add(1); // adds the element at the end of the list
myOrderedList.add(0, 2); // adds the element (2) at the index (0)
myOrderedList.add(0, 3); // adds the element (3) at the index (0)
// the list is: [3, 2, 1]

答案 1 :(得分:0)

使用for循环创建Hashmap的ArrayList,将两个值放入其中。之后,使用Collections.reverse() 来反转数组值