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

Display ArrayList from SQLite database in logs

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

我有 class DataBaseAdapter,其中我有方法 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>

Cards 是我的 class with getters and setters

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;
}

这样使用:

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

    }

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

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