Java 如何将for循环值添加到arraylist?
我有一个活动,其中的值是通过JSON获取的。运行循环的Java 如何将for循环值添加到arraylist?,java,android,arraylist,Java,Android,Arraylist,我有一个活动,其中的值是通过JSON获取的。运行循环的。我从JSON接收获取的对象中存在的所有值。但是,我想将所有值附加到ArrayList,即image\u url。谁能帮我一下吗 public class AndroidJSONParsingActivity extends ListActivity { private static String url = "http://www.ttt.com/album_pro/array_to_encode"; JSONArray
。我从JSON接收获取的对象中存在的所有值。但是,我想将所有值附加到ArrayList
,即image\u url
。谁能帮我一下吗
public class AndroidJSONParsingActivity extends ListActivity {
private static String url = "http://www.ttt.com/album_pro/array_to_encode";
JSONArray folio = null;
ArrayList<String> urlList = new ArrayList<String>();
public static ArrayList<String> image_urls = new ArrayList<String>();
@SuppressLint("NewApi")
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(policy);
JSONParser jParser = new JSONParser();
try {
JSONObject json = jParser.getJSONFromUrl(url);
// Log.v("URL",json.toString());
JSONObject seo = json.getJSONObject("SEO");
// Log.v("seo",seo.toString());
JSONArray folio = seo.getJSONArray("Folio");
Log("ARRAY-FOLIO0" + folio);
JSONArray image_urls1 = new JSONArray();
String s1 = seo.getString("Folio");
for (int i = 0; i < folio.length(); i++) {
String m = folio.getString(i);
Log.v("M" + i, m);
image_urls.add(folio.getString(i) + ",");
Log("JSON-ARRAY-->" + image_urls.add(folio.getString(i)));
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void Log(String string) {
Log.v("SEO-TEST", string);
}
}
ArrayList值=新的ArrayList();
对于(int i=0;i您的日志cat打印为true,因为您在消息中放置了“image\u url.add(folio.getString(i))”
,如果项目添加成功,此行将返回true。。
现在请检查以下内容
ArrayList<String > image_urls1 = new JSONArray(); //Use arrayList here
String s1 = seo.getString("Folio");
for (int i = 0; i < folio.length(); i++) {
String m = folio.getString(i);
Log.v("M" + i, m);
image_urls1 .add(folio.getString(i) + ",");//adding here
Log("JSON-ARRAY-->" + image_urls1.get(i) ); // printing the current element
}
ArrayList image\u urls1=new JSONArray();//在此处使用ArrayList
字符串s1=seo.getString(“Folio”);
对于(int i=0;i”+image_urls1.get(i));//打印当前元素
}
true
表示添加成功。
您必须为
循环数组创建附加的,以便获取附加值。
还有这个
for (int i = 0; i < folio.length(); i++) {
String m = folio.getString(i);
Log.v("M" + i, m);
image_urls.add(folio.getString(i) + ",");
Log("JSON-ARRAY-->" + image_urls.add(folio.getString(i)));
}
for(int i=0;i”+image_url.add(folio.getString(i));
}
由于字符串连接,将在每次迭代中创建三个StringBuilder
对象。使用StringBuilder并附加每个元素,然后使用toString()函数获取完整字符串。将JSON处理逻辑移动到AsyncTask。在onCreate()中,用户界面线程上不能有同样的网络方法。将代码移动到异步任务,并在onResume()中调用异步任务methodpost您的json字符串有问题。当前代码有错误吗?@Big.Child:Thnx。数据正在追加。但是根据我应用程序中的要求,我需要一个字符串数组。您能告诉我,我是如何理解您需要追加值的字符串数组而不仅仅是一个完整的字符串的,对吗?我试过了g相同,但我在logcat中得到的附加测试为“true”
ArrayList<String > image_urls1 = new JSONArray(); //Use arrayList here
String s1 = seo.getString("Folio");
for (int i = 0; i < folio.length(); i++) {
String m = folio.getString(i);
Log.v("M" + i, m);
image_urls1 .add(folio.getString(i) + ",");//adding here
Log("JSON-ARRAY-->" + image_urls1.get(i) ); // printing the current element
}
for (int i = 0; i < folio.length(); i++) {
String m = folio.getString(i);
Log.v("M" + i, m);
image_urls.add(folio.getString(i) + ",");
Log("JSON-ARRAY-->" + image_urls.add(folio.getString(i)));
}