0
final String query = "SELECT " +
                "questiontable.QuestionID, questiontable.answer0, questiontable.answer1, questiontable.answer2, questiontable.answer3, questiontable.answer4, questiontable.Correct, " +
                " FROM questiontable" +

                " WHERE questiontable.QuestionID IN ( " +
                allQuestionIds +
                " )  ORDER BY questiontable.QuestionID ";
        this.cursor = this.db.rawQuery(query, null);

        if (this.cursor.moveToFirst()) {
            do {
                for (final Question q : questions) {
                    if (q.getQuestionId() == this.cursor.getInt(0)) {
                        q.addAnswer(new Answer(this.cursor.getString(1),
                                this.cursor.getString(2),
                                this.cursor.getString(3),
                                this.cursor.getString(4),
                                this.cursor.getString(5),
                                (this.cursor.getInt(6) == 1 ? true : false)));
                    }
                }
            } while (this.cursor.moveToNext());
        }
        this.cursor.close();

this.sample()を次のように追加したい:

             q.addAnswer(new Answer(this.sample(),
                                    this.cursor.getString(1),
                                    this.cursor.getString(2),
                                    this.cursor.getString(3),
                                    this.cursor.getString(4),
                                    this.cursor.getString(5),
                                    (this.cursor.getInt(6) == 1 ? true : false)));

私がしたいこと:

*整数値 (AnswerID) を取る sample() メソッドを作成する

*AnswerID は、QuestionID (this.cursor.getInt(0)) とそれに近い整数値を取る整数値になります。0 から 4 までの数値。したがって、各 QuestionID には 5 つの値があります (10,11,12,13,14 - 20,21,22,23,24 - ......)

※this.sample()を使用

私のコードは私が想像するものです(完全に間違っている可能性があります)

 void sample (int AnswerID) {
                            for (int i = 0; i < 5; i++) {
                                 AnswerID = this.cursor.getInt(0) + i ;
                            }
                        this.sample = sample;   

                        }
4

1 に答える 1

1

メソッドが無効であるため、これを行うことはできません。
Void - 何も返しません。

void sample (int AnswerID) {
..
}

何かを計算したい場合は、整数の arrayList を返すメソッドを作成し、それをパラメーターとして q.addAnswer メソッドに渡すことができます。

public  ArrayList<Integer>  sample(Cursor cur) {

    ArrayList<Integer> numbers= new ArrayList<Integer>();
    numbers.add(cur.getInt(0));//first test case
    ...
    //numbers is array list of integers
    return numbers;
}

したがって、整数のarrayListを操作できます。

于 2013-03-18T13:46:13.337 に答える