型号:
public class Geometry {
public String type;
public List<Position> coordinatesRoute;
public double[] coordinatesPoint;
method for recover jsonObjet
JSONObject objectResponse = new JSONObject(res);
JSONArray JarrayFeatures = objectResponse.getJSONArray("features");
for (int i = 0; i < JarrayFeatures.length(); i++) {
JSONObject jsonObjFeatures = JarrayFeatures.getJSONObject(i);
Log.e("jsonObjFeatures:", " " + jsonObjFeatures);
//geoFeatures.setType((String) jsonObjFeatures.get("type"));
features.setType((String) jsonObjFeatures.get("type"));
JSONObject objectGeometry = jsonObjFeatures.getJSONObject("geometry");
geometry.setType((String) objectGeometry.get("type"));
Log.e("objectGeometry:", "" + objectGeometry);
//problems
geometry.setCoordinatesPoint((double[]) objectGeometry.get("coordinates"));
JSON:
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
2.1163,
48.8288
]
},
我正在尝试恢复我的 json 的值坐标,它是一个 double 组。 感谢您的帮助。
最佳答案
coordinates
是 JSON
中的 JSONArray
,因此您不能将其转换为 double
!
geometry.setCoordinatesPoint(objectGeometry.getJSONArray("coordinates").getDouble(0),objectGeometry.getJSONArray("coordinates").getDouble(1));
关于android - org.json.JSONArray 无法转换为 double[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58875524/