java.lang.NullPointerException: Attempt to get length of null array
salut a tous :)
j'ai une erreur que j'arrive pas a résoudre !
j'ai déclarer un tableaux globalement
Code:
double[][] StationTram1;
et je l'ai initialisé et remplie a l'aide d'une méthode depuis une base de donnée
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| public void onResponse(String response) {
try {
JSONObject jsonObj = new JSONObject(response);
JSONArray jsonArray = jsonObj.getJSONArray("markers");
double [][] StationTram1 = new double [jsonArray.length()][2];
for (int i = 0; i < jsonArray.length(); i++) {
jresponse = jsonArray.getJSONObject(i);
StationTram1[i][0]=Double.parseDouble(jresponse.getString("lng"));
StationTram1[i][1]=Double.parseDouble(jresponse.getString("lat"));
}
for ( double[] point1 : StationTram1){
Log.i("lng",String.valueOf(point1[0]) );
}
} catch (JSONException e) {
e.printStackTrace();
}
//pDialog.dismiss();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(MapsActivity.this);
requestQueue.add(stringRequest); |
je n peux pas l'inisitailisé "globalement" vu qu'il prend la taille de la table qu'elle est en base
maintenant quand je veux calculé la distance
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| for(double[] point : StationTram1) {
LatLng to = new LatLng(point[0], point[1]);
//Calculating the distance in meters
int distanceLambda = (int) SphericalUtil.computeDistanceBetween(from, to);
if (distanceLambda < distance) { // cette distance est donc plus petite que la plus petite distance déjà trouvée
distance = distanceLambda;
Latitude1 = point[0];
Longitude1 = point[1];
}
} |
j'ai une erreur : java.lang.NullPointerException: Attempt to get length of null array