Как возвратить массив в методе в Java

324
17 мая 2017, 06:07

Здравствуйте, сильно не пинайте, но не могу понять как я могу вставить массив в 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;
}
}
Answer 1

Проблема не в том, что это массив, а в том, что объявили ссылку не в той области видимости, в которой возвращаете результат. Надо так:

Questions[] questions = null;
if (cursor.moveToFirst()) {
        //...
}
cursor.close();
return questions;
READ ALSO
Как сохранить пароль через web view?

Как сохранить пароль через web view?

Захожу на сайт через web view, ввожу пароль и логин, хочу чтобы при следующей загрузке страницы предлагало ввести пароль, как у браузере

278
Подскажите слайдер с эффектом похжим на compariosn

Подскажите слайдер с эффектом похжим на compariosn

Добрый, есть ли на примете слайдер с похожим эффектом https://juxtaposeknightlab

233
Передать данные из c# в delphi

Передать данные из c# в delphi

Запущено два приложенияОдно на c#, второе на delphi Необходимо передать число из c# в delphi

283
Где хранится кэш COM компонента Shockwave Flash Object

Где хранится кэш COM компонента Shockwave Flash Object

Куда Shockwave Flash Object сохраняет кэш-файлы? И как их очистить? По всей видимости место хранения отличается от стандартного плагина Flash или самостоятельного...

346