Здравствуйте, сильно не пинайте, но не могу понять как я могу вставить массив в return метода.
В return questions красного цвета.
Есть ли какая нибудь возможность, возвратить массив при вызове метода?
public class Questions {
int dataBaseID;
String question;
String answer;
public String[] DBConnect(Context context) {
// Подключение базы
MyDatabase mMyDatabase = new MyDatabase(context);
final SQLiteDatabase database = mMyDatabase.getWritableDatabase();
//*****
Cursor cursor = database.query(MyDatabase.DATABASE_TABLE, null, null, null, null, null, null);
if (cursor.moveToFirst()) {
int idIndex = cursor.getColumnIndex(MyDatabase.KEY_ID);
int questionIndex = cursor.getColumnIndex(MyDatabase.KEY_QUESTION);
int answerIndex = cursor.getColumnIndex(MyDatabase.KEY_ANSWER);
do {
Questions[] questions = {
new Questions(cursor.getInt(idIndex), cursor.getString(questionIndex), cursor.getString(answerIndex)),
};
} while (cursor.moveToNext());
}
cursor.close();
return questions;
}
private Questions(int dataBaseID, String question, String answer) {
this.dataBaseID = dataBaseID;
this.answer = answer;
this.question = question;
}
}
Проблема не в том, что это массив, а в том, что объявили ссылку не в той области видимости, в которой возвращаете результат. Надо так:
Questions[] questions = null;
if (cursor.moveToFirst()) {
//...
}
cursor.close();
return questions;
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости