在日志中显示来自SQLite数据库的ArrayList

时间:2015-02-11 13:40:06

标签: android arraylist android-sqlite android-log

如何在日志中显示ArraylIst中的项目?

我有类 DataBaseAdapter ,其中我有Method getCardsArrayList ,现在我想在日志中显示此ArrayLIst中的每个项目

当我尝试在 MainActivity 中写下这一行时:

ArrayList<Cards> cards= dataBaseAdapter.getCardsArrayList();
    for(int i=0; i<cards.size();i++){
        Log.i("WORKS",cards[i]);

    }

我有一个错误:期望的数组类型,找到java.util.ArrayList <com.myproject.Cards>

是我的getter和setter

课程

DataBaseAdapter 中的数组:

public ArrayList<Cards> getCardsArrayList(){
    SQLiteDatabase sqLiteDatabase= helper.getWritableDatabase();

    Cursor cursor=sqLiteDatabase.rawQuery(helper.QUERY,null);

    cursor.moveToFirst();
    for (int i=0; i<cursor.getCount(); i ++){
        cardsArrayList.add(new Cards(cursor.getString(0),cursor.getString(1),cursor.getString(2),cursor.getString(3)));

        cursor.moveToNext();
    }
    return cardsArrayList;
}

1 个答案:

答案 0 :(得分:4)

像这样使用:

ArrayList<Cards> cards= dataBaseAdapter.getCardsArrayList();
    for(int i=0; i<cards.size();i++){
        Log.i("WORKS",cards.get(i).toString());

    }

要访问arrayList的项目,必须使用get方法。

只是为了确保Cards类项必须实现toString方法,因为Log需要一个String对象作为第二个参数。