我有两个数组列表,大小相同,分别名为" name“和" path”,分别包含文件的名称和路径(这是我使用自己创建的搜索函数读取外部存储空间时获得的)。
现在之后,我已经按照字母顺序对"name“数组列表进行了排序,但"path”数组列表保持不变。
我想在我的列表视图中使用这些数组列表,但问题是当我从listview中单击任何文件时,因为我们知道只有一个"name“数组列表被排序,所以它们没有从相应的路径打开正确的文件,因为" path”数组列表仍然包含"name“列表的旧顺序的路径。
那么,如何使"path“数组列表与"name”列表的顺序相同呢?以便将新名称列表与其正确路径相匹配。
如果可能的话,有人可以通过Teamviewer帮助我吗?我不能在这里发布全部代码,因为这是我的大学项目,我希望你们都能理解。
发布于 2018-06-23 03:05:10
我建议您使用TreeMap (它是一种从a-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有任何问题,请随时向我提问^^
我希望我能帮到你
https://stackoverflow.com/questions/50993649
复制相似问题