【发布时间】:2017-06-04 14:36:00
【问题描述】:
我有这个代码来检索我在数据库中的值:
if(json != null){
try{
result = json.getJSONArray("monthly");
if(!result.toString().equals("[]")) {
for (int i = 0; i < result.length(); i++) {
JSONObject source = result.getJSONObject(i);
String month = source.getString("month");
String counted = source.getString("counted");
Toast.makeText(getActivity(), month, Toast.LENGTH_SHORT).show();
}
注意
String month = source.getString("month");
返回 2 秒左右后才加载的值很快。但是当我尝试使用此代码将该值解析为整数时:
int 月 = Integer.parseInt(source.getString("month"));
需要很长时间才能完成。那么我要问的是如何正确地将数据解析为整数?
编辑: JSON
{"monthly":[{"month":"2","counted":"1"},{"month":"3","counted":"1"},{"month": "4","counted":"1"},{"month":"5","counted":"5"},{"month":"6","counted":"2"},{ "月":"7","计数":"3"},{"月":"8","计数":"1"},{"月":"9","计数":"2 "},{"month":"10","counted":"1"},{"month":"11","counted":"3"},{"month":"12","counted ":"2"}]}
【问题讨论】:
-
除了 getInt 或 optInt 之外别无选择...阅读文档
-
检查
equals("[]")是没有意义的,顺便说一句。您已经检查了数组长度