我正在编写一个简单的多项选择测验应用程序。 SQLite数据库表如下所示:

1 Question1 RightAnswer1
2 Question2 RightAnswer2
3 Question3 RightAnswer3
and so on.


活动布局如下所示。

Question TextView
Wrong Answer ListViewItem
Right Answer ListViewItem
Wrong Answer ListViewItem
Wrong Answer ListViewItem


我将选择Java random从表中选择一个随机问题。我的问题是-我应该如何从同一表格中选择错误答案,以免它们与正确答案不符。
另一个问题是如何将正确的答案随机放置在四个TextView之一上?
我应该使用Java Collections.shuffle来调整这四个位置吗?

最佳答案

您可以为sqlite数据构建一个类。

public class name{
     private String question;
     private String answer;
     public name(String q,String a){
             question=q;
             question=a;
       }
     public String getQuestion{return question;}
     public String getAnswer {return answer;}
}


并且在定义了此类之后,您可以在从Sqlite数据库中检索数据之后将数据放入ArrayList中。

ArrayList<your class name> list=new ArrayList<your class name>();
Cursor c=db.query(tablename,new String[]{your columns},null,null,null,null,null);
if(c.moveToFirst(){
    do{
       String question=c.getString(columnName);
       String answer=c.getString(ColumnBame);
       className cls=new className(question,answer);
       list.add(cls);
       }while(c.MoveToNext());

07-26 05:33
查看更多