Android:对包含移动设备上所有.jpg文件路径的字符串数组列表进行排序
有人能帮我对包含路径的字符串数组列表进行排序吗。 我使用了Collection.sort(我的列表); 但它并没有很好地工作,它根据文件夹名称对它们进行排序,比如假设我有文件:Android:对包含移动设备上所有.jpg文件路径的字符串数组列表进行排序,android,arrays,sorting,Android,Arrays,Sorting,有人能帮我对包含路径的字符串数组列表进行排序吗。 我使用了Collection.sort(我的列表); 但它并没有很好地工作,它根据文件夹名称对它们进行排序,比如假设我有文件: mnt/sdcard/A.jpg mnt/sdcard/folder1/B.jpg mnt/sdcard/C.jpg mnt/sdcard/folder2/D.jpg 集合后。排序(我的列表): 我想要的结果是: mnt/sdcard/A.jpg mnt/sdcard/folder1/B.jpg mn
mnt/sdcard/A.jpg
mnt/sdcard/folder1/B.jpg
mnt/sdcard/C.jpg
mnt/sdcard/folder2/D.jpg
集合后。排序(我的列表):
我想要的结果是:
mnt/sdcard/A.jpg
mnt/sdcard/folder1/B.jpg
mnt/sdcard/C.jpg
mnt/sdcard/folder2/D.jpg
实现一个自定义的
比较器
,并将该比较器
对象传递给函数。在实现comparator时,拆分文件路径并单独获取最后一部分。然后返回比较这些最后部分的结果
更多详细信息一种方法是在最后一个“/”之后获取每个字符串的子字符串。然后可以按该值排序
String sub=myString.substring(String.lastIndexOf('/')+1)代码>
返回c.jpg
将其用于集合中的每个字符串
,在比较器中对列表进行排序我获取了一个临时列表,并根据/之后的子字符串对其进行排序,临时列表已排序,但我无法找到根据此临时列表对路径列表进行排序的逻辑,请编写代码
mnt/sdcard/A.jpg
mnt/sdcard/folder1/B.jpg
mnt/sdcard/C.jpg
mnt/sdcard/folder2/D.jpg
String name = new File("mnt/sdcard/c.jpg").getName();