我有两个数组列表,它们的大小相同,分别命名为“ name”和“ path”,分别包含文件的名称和路径(这是通过使用搜索功能读取外部存储得到的)。现在,我已经按照不区分大小写的字母顺序对“名称”数组列表进行了排序,但是“路径”数组列表保持不变。我想在列表视图中使用这些数组列表,但是问题是当我从列表视图中单击任何文件时,并且我们知道只有一个数组“名称”被排序,因此它们没有从其对应的路径中打开正确的文件因为“路径”数组列表仍然包含“名称”列表的旧顺序的路径。那么,如何使“路径”数组列表与“名称”列表的顺序相同?为了使新名称列表与它们的正确路径匹配。如有可能,有人可以通过Teamviewer帮助我吗?我无法在此处发布整个代码,因为这是我的大学项目,希望大家都能理解。
2 回答
![?](http://img1.sycdn.imooc.com/533e4c640001354402000200-100-100.jpg)
慕斯王
TA贡献1864条经验 获得超2个赞
我建议您使用TreeMap(它是一种从z排序的HashMap类型)而不是2个数组列表。代码看起来像这样:
private Map<String, String> namePathMap = new TreeMap<String, String>();
现在,要添加具有名称的路径,请按照以下步骤操作:
namePathMap.put("[name]", "[path]");
这将按键对HashMap进行排序。
如果要通过给定的mame获取路径,则必须编写:
namePathMap.get("[name]");
如果现在需要遍历名称:
for(String key : namePathMap.keySet()){
String value = namePathMap.get(key);
//Do here what you want
}
如果您有任何关于Maps / HashMaps的问题,请随时问我^^
,希望我能为您提供帮助
添加回答
举报
0/150
提交
取消