我从树图中获得了价值:
我已经将字符串格式的所有坐标添加到hashmap中,这是一个rraylist现在它在treemap中的字符串。所以我想从String idlatlng中检索包含字符串中的arraylist的所有值:
代码已添加到hashmap
LatLng allLatLng= new LatLng((lat1),(long1));
all.add(allLatLng);
map.put("latlng" , all.toString());
第二个树形图:
Collections.sort(list, new Comparator<Map<String, String>>() {
@Override
public int compare(Map<String, String> o1, Map<String, String> o2) {
String value1 = o1.get("amount");
String value2 = o2.get("amount");
return Integer.parseInt(value1)-Integer.parseInt(value2);
}
});
for (Map<String, String> map1 : list) {
String id = map1.get("id");
String amount = map1.get("amount");
System.out.println("amount= "+amount + " , " +"id = "+id);
String idlatlng = map1.get("latlng");
}
在上面的代码中,我得到了latlng的值。
String idlatlng = map1.get("latlng");
idlatlng
包含.Ao的arraylist。如何将上述字符串中的值转换为arraylist。这是前一个问题的后续问题。我非常感谢任何帮助。谢谢你提前。
输出:
String idlatlng
---&gt; arraylist<LatLng>
Unable to sort the the list by ascending order
我从idlatlng获得的价值是:[lat/lng: (70.0187, -141.0205), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163), lat/lng: (70.4515,-144.8163)]
答案 0 :(得分:0)
我想你想要这个:
private ArrayList<LatLng> latlngs = new ArrayList<LatLng>();
for (Map<String, String> map1 : list) {
String id = map1.get("id");
String amount = map1.get("amount");
String idlatlng = map1.get("latlng");
LatLng latLng = new LatLng(id , amount, idlatlng);
latlngs.add(latLng);
}
答案 1 :(得分:0)
LatLng allLatLng= new LatLng((lat1),(long1));
all.add(allLatLng);
map.put("latlng" , all.toString());
将上述代码替换为此
LatLng allLatLng= new LatLng((lat1),(long1));
all.add(allLatLng);
JSONArray jsonA = JSONArray.fromObject(all);
map.put("latlng" , jsonA.toString());
您的迭代将如下所示
for (Map<String, String> map1 : list) {
String id = map1.get("id");
String amount = map1.get("amount");
System.out.println("amount= "+amount + " , " +"id = "+id);
JSONArray jsonArray = JSONArray.fromObject( map1.get("lanlat"));
Collection<LatLng> collection = JSONArray.toCollection(jsonArray, LatLng.class);
for (Iterator iterator = collection.iterator(); iterator.hasNext();) {
LatLng latLng = (LatLng) iterator.next();
//Do whatever with your latLng object
}
}
注意: 要正常工作,LatLng类应该有defualt构造函数。
如果您需要更多详细信息,请告诉我.........