Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
排序Hashmap<;字符串,双>;在Android中_Android_Hashmap - Fatal编程技术网

排序Hashmap<;字符串,双>;在Android中

排序Hashmap<;字符串,双>;在Android中,android,hashmap,Android,Hashmap,我需要根据HashMap中存储的值对其进行排序。HashMap包含业务名称作为键,纬度和经度差作为值 hashMapLocationDifference=newHashMap()假设使用Java,您可以按如下方式排序HashMap: public LinkedHashMap sortHashMapByValuesD(HashMap passedMap) { List mapKeys = new ArrayList(passedMap.keySet()); List mapValues

我需要根据HashMap中存储的值对其进行排序。HashMap包含业务名称作为键,纬度和经度差作为值


hashMapLocationDifference=newHashMap()

假设使用Java,您可以按如下方式排序
HashMap

public LinkedHashMap sortHashMapByValuesD(HashMap passedMap) {
   List mapKeys = new ArrayList(passedMap.keySet());
   List mapValues = new ArrayList(passedMap.values());
   Collections.sort(mapValues);
   Collections.sort(mapKeys);

   LinkedHashMap sortedMap = new LinkedHashMap();

   Iterator valueIt = mapValues.iterator();
   while (valueIt.hasNext()) {
       Object val = valueIt.next();
       Iterator keyIt = mapKeys.iterator();

       while (keyIt.hasNext()) {
           Object key = keyIt.next();
           String comp1 = passedMap.get(key).toString();
           String comp2 = val.toString();

           if (comp1.equals(comp2)){
               passedMap.remove(key);
               mapKeys.remove(key);
               sortedMap.put((String)key, (Double)val);
               break;
           }

       }

   }
   return sortedMap;
}

HashMap不知道顺序的概念。您需要另一种类型的收藏哪种类型的收藏@为了便于排序,请使用列表而不是映射。好的,但我想根据键和值对数据进行排序,那么如何使用列表而不是映射@AnandSinghse请看这篇文章: