我收到以下警告:
使用Double.valueOf(Double.valueOf(jsonurl.getString(“latitude”))* 1E6)代替Android Lint问题 使用Double.valueOf(Double.valueOf(jsonurl.getString(“longitude”))* 1E6)而不是
问题解释:你不应该直接调用包装类的构造函数,例如newInteger(42)。而是调用“valueOf”工厂方法,例如Integer.valueOf((42))。这通常会占用更少的内存。 ................
JSONObject e = arr.getJSONObject(i);
jsonurl = (JSONObject) e.get("data");
int jsonlng = (new Double(Double.valueOf(jsonurl.getString("longitude")) * 1E6).intValue());
newdata[i] = new GeoPoint(jsonlat,jsonlng);
答案 0 :(得分:0)
也许:
int jsonlng = (int) (Double.valueOf(jsonurl.getString("longitude")) * 1E6);
那"(new Double(...))。intValue()"没有必要。
答案 1 :(得分:0)
(new Double(Double.valueOf(jsonurl.getString("longitude")) * 1E6).intValue());
将成为
(Double.valueOf(Double.valueOf(jsonurl.getString("longitude")) * 1E6).intValue());
没有警告。