我创建了3个arraylists并存储了数据.我需要将一个arraydata传递给其他页面,因此我将我的个别数组添加到主数组中.但是当我向其他数组添加一个数组时,数据没有被添加到该数组中.这是我的代码:
static ArrayList<ArrayList<String>> stringList1=new ArrayList<ArrayList<String>>();
static ArrayList<ArrayList<String>> stringList3;
stringList1 = Mypage.stringList1;
ArrayList<String> optionlist = new ArrayList<String>();
stringList3 = new ArrayList<ArrayList<String>>();stringList3 = dbAdapter.selectRecordsFromDBList(query2, null);
for (int i = 0; i < stringList3.size(); i++) {
optionlist = stringList3.get(i);
System.out.print("option list size");
System.out.print(optionlist.size());
stringList1.add(optionlist);
System.out.println("total stringlist1"+stringList1.get(0));
Run Code Online (Sandbox Code Playgroud)
我从Mypage获取stringList1数组值并在新页面中访问它.在新页面中,我试图通过给出stringList1.add(optionlist)将optionlist数组添加到stringList1,但数据没有添加.哪里出错了?请帮我解决这个问题...在此先感谢
Sun*_*hoo 13
使用addAll()它将指定ArrayList中的所有元素按指定Collection的Iterator返回的顺序附加到此列表的末尾.
用stringList1.addAll(optionlist);而不是stringList1.add(optionlist);
看到您的代码后,我可以猜测您遇到的问题是 arrayList 的元素未复制到另一个 arrayList 中。如果这是您的问题,请更改您的代码,如下所示
static ArrayList<ArrayList<String>> stringList1=new ArrayList<ArrayList<String>>();
static ArrayList<ArrayList<String>> stringList3;
stringList1 = Mypage.stringList1;
ArrayList<String> optionlist;
stringList3 = new ArrayList<ArrayList<String>>();
stringList3 = dbAdapter.selectRecordsFromDBList(query2, null);
for (int i = 0; i < stringList3.size(); i++) {
optionlist = new ArrayList<String>();
optionlist = stringList3.get(i);
System.out.print("option list size");
System.out.print(optionlist.size());
stringList1.add(optionlist);
System.out.println("total stringlist1"+stringList1.get(0));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17863 次 |
| 最近记录: |