Android 获取JSONArray的所有请求的JSONObject。它只显示最后一个JSONObject

Android 获取JSONArray的所有请求的JSONObject。它只显示最后一个JSONObject,android,android-json,Android,Android Json,JSON仅显示JSON格式数据中最后一个“服务描述”对象“100g”,见下文。而不是所有的“服务描述”对象 阵列正在提供服务 如果您查看下面的JSON格式的数据,您将看到有多个“服务描述” 我正在尝试获取所有可用选项的“服务描述”以显示,而不是它显示的最后一个对象。如何显示所有“服务描述” 我相信错误在于,但我可能错了,这就是为什么我要问: for (int n = 0; n < foodName.length(); n++) { JSONObject object = foodN

JSON仅显示JSON格式数据中最后一个“服务描述”对象“100g”,见下文。而不是所有的“服务描述”对象

阵列正在提供服务 如果您查看下面的JSON格式的数据,您将看到有多个“服务描述”

我正在尝试获取所有可用选项的“服务描述”以显示,而不是它显示的最后一个对象。如何显示所有“服务描述”

我相信错误在于,但我可能错了,这就是为什么我要问:

for (int n = 0; n < foodName.length(); n++) {
    JSONObject object = foodName.getJSONObject(n);
    String shit = object.getString("serving_description");
    Log.v("FATSEC", "" + shit);
    ret = shit + "";
}

使用
+
ret
中的所有
服务描述
值附加为:

   ret += shit + "\n\n";

使用
+
ret
中的所有
服务描述
值附加为:

   ret += shit + "\n\n";

使用
+
ret
中的所有
服务描述
值附加为:

   ret += shit + "\n\n";

使用
+
ret
中的所有
服务描述
值附加为:

   ret += shit + "\n\n";

循环的每次迭代都会覆盖
ret
的值,因此您永远无法累积它们。因此,当您返回时,它具有存储在那里的最后一个值,而没有以前被擦除的值。考虑使用<代码> StringBuilder < /代码> ./P>
StringBuilder builder = new StringBuilder();

...

for (int n = 0; n < foodName.length(); n++) {
    JSONObject object = foodName.getJSONObject(n);
    String shit = object.getString("serving_description");
    Log.v("FATSEC", "" + shit);
    builder.append(shit).append("\n");
}

...

return builder.toString();
StringBuilder=新建StringBuilder();
...
对于(int n=0;n
循环的每次迭代都会覆盖
ret
的值,因此您永远无法累积它们。因此,当您返回时,它具有存储在那里的最后一个值,而没有以前被擦除的值。考虑使用<代码> StringBuilder < /代码> ./P>
StringBuilder builder = new StringBuilder();

...

for (int n = 0; n < foodName.length(); n++) {
    JSONObject object = foodName.getJSONObject(n);
    String shit = object.getString("serving_description");
    Log.v("FATSEC", "" + shit);
    builder.append(shit).append("\n");
}

...

return builder.toString();
StringBuilder=新建StringBuilder();
...
对于(int n=0;n
循环的每次迭代都会覆盖
ret
的值,因此您永远无法累积它们。因此,当您返回时,它具有存储在那里的最后一个值,而没有以前被擦除的值。考虑使用<代码> StringBuilder < /代码> ./P>
StringBuilder builder = new StringBuilder();

...

for (int n = 0; n < foodName.length(); n++) {
    JSONObject object = foodName.getJSONObject(n);
    String shit = object.getString("serving_description");
    Log.v("FATSEC", "" + shit);
    builder.append(shit).append("\n");
}

...

return builder.toString();
StringBuilder=新建StringBuilder();
...
对于(int n=0;n
循环的每次迭代都会覆盖
ret
的值,因此您永远无法累积它们。因此,当您返回时,它具有存储在那里的最后一个值,而没有以前被擦除的值。考虑使用<代码> StringBuilder < /代码> ./P>
StringBuilder builder = new StringBuilder();

...

for (int n = 0; n < foodName.length(); n++) {
    JSONObject object = foodName.getJSONObject(n);
    String shit = object.getString("serving_description");
    Log.v("FATSEC", "" + shit);
    builder.append(shit).append("\n");
}

...

return builder.toString();
StringBuilder=新建StringBuilder();
...
对于(int n=0;n
这同样有效。我已经为你的答案准备好了答案。这同样有效。我已经为你的答案准备好了答案。这同样有效。我已经为你的答案准备好了答案。这同样有效。我已经为你的答案准备好了。我如何将每个“服务描述”分隔成它们自己的字符串?@EugeneH:使用任何集合,如ArrayList、HashMap,。。。为了单独存储每个
服务描述
,对不起,我没有早点回来。我要试试ArrayList。你对如何分开每个物体有什么建议吗?我假设在您的语句中使用n。我如何将每个“服务描述”分隔成各自的字符串?@EugeneH:使用任何集合,如ArrayList、HashMap,。。。为了单独存储每个
服务描述
,对不起,我没有早点回来。我要试试ArrayList。你对如何分开每个物体有什么建议吗?我假设在您的语句中使用n。我如何将每个“服务描述”分隔成各自的字符串?@EugeneH:使用任何集合,如ArrayList、HashMap,。。。为了单独存储每个
服务描述
,对不起,我没有早点回来。我要试试ArrayList。你对如何分开每个物体有什么建议吗?我假设在您的语句中使用n。我如何将每个“服务描述”分隔成各自的字符串?@EugeneH:使用任何集合,如ArrayList、HashMap,。。。为了单独存储每个
服务描述
,对不起,我没有早点回来。我要试试ArrayList。你对如何分开每个物体有什么建议吗?我假设在你的陈述中使用n。