在循环中arraylist.add之后,Android最后输出arraylist不清楚

时间:2017-01-24 07:32:59

标签: android arraylist

我想问一下当用循环添加arraylist的新值时如何清除最后的输出。

for (int i = 0; i < sqlitealamat.size(); i ++) {

    if (sqlitefirstnext.get(i).trim().equals("0")) {
        sqlitealamat1.add(sqlitealamat.get(i));
        sqliteaddcaption1.add(sqliteaddcaption.get(i));
        sqlitetanggalan1.add(sqlitetanggalan.get(i));
        sqlitelatitudes1.add(sqlitelatitudes.get(i));
        sqlitelongitudes1.add(sqlitelongitudes.get(i));
        sqliteuploadnumber1.add(sqliteuploadnumber.get(i));
        sqlitenik1.add(sqlitenik.get(i));
        sqlitehelpdeskid1.add(sqlitehelpdeskid.get(i));
        sqlitesiteid1.add(sqlitesiteid.get(i));
        sqlitesitename1.add(sqlitesitename.get(i));
        sqlitedescription1.add(sqlitedescription.get(i));
        sqliteremark1.add(sqliteremark.get(i));
        sqliteaddress1.add(sqliteaddress.get(i));
        sqliteworkid1.add(sqliteworkid.get(i));
        sqlitesend1.add(sqlitesend.get(i));
    } else if (sqlitefirstnext.get(i).trim().equals("1")) {
        sqlitealamat2.add(sqlitealamat.get(i));
        sqliteaddcaption2.add(sqliteaddcaption.get(i));
        sqlitetanggalan2.add(sqlitetanggalan.get(i));
        sqlitelatitudes2.add(sqlitelatitudes.get(i));
        sqlitelongitudes2.add(sqlitelongitudes.get(i));
        sqliteuploadnumber2.add(sqliteuploadnumber.get(i));
        sqlitenik2.add(sqlitenik.get(i));
        sqlitehelpdeskid2.add(sqlitehelpdeskid.get(i));
        sqlitesiteid2.add(sqlitesiteid.get(i));
        sqlitesitename2.add(sqlitesitename.get(i));
        sqlitedescription2.add(sqlitedescription.get(i));
        sqliteremark2.add(sqliteremark.get(i));
        sqliteaddress2.add(sqliteaddress.get(i));
        sqliteworkid2.add(sqliteworkid.get(i));
        sqlitesend2.add(sqlitesend.get(i));
    }
}

int size = sqlitealamat2.size();

for (int i = 0; i < sqlitealamat2.size(); i++) {
    Log.i("FIRSTNEXT1", ""+ sqlitealamat2.size());
}

示例如果输入1个新值将在logcat中显示如下:

2917-2917/tmg.tmg I/FIRSTNEXT1﹕ 1

如果输入另外1个新值:

2917-2917/tmg.tmg I/FIRSTNEXT1﹕ 1
2917-2917/tmg.tmg I/FIRSTNEXT1﹕ 2

如何只显示新输出并在每次添加新值时清除以前的输出?

3 个答案:

答案 0 :(得分:0)

在添加新数据之前,您需要清除arraylist。 例如arraylist.clear();

清除功能清除所有以前的数据。

答案 1 :(得分:0)

在添加arraylist之前,您需要检查

如果(arraylist.size大于0)arraylist.clear(); arraylist.add(新值);`

答案 2 :(得分:0)

我没有看到任何明确的();在将值添加到sqlitealamat2

之前,在代码中使用arraylist命令