Hubert_bing
Hubert__
采纳率33.3%
2016-05-09 07:55

android/java 数据库中数据如何生成选择题

5
已采纳

现有数据库中数据形式是这样的:key 名字;translation 解释;
如何**随机**取出其中一条数据的key为题目,translation为一个正确选项,再取出另外3条数据的translation作为错误选项,生成选择题,并且正确选项会随机出现在ABCD任意位置?
哪位大神可以解答一下我的问题?提供一个思路。。。先谢谢啦~

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • qq_34920350 千乘1 5年前

    首先获取随机题目;随机题目id可以使用这样获取int a=(int) (Math.random()*10+1);后面的10是在10里面随机获取;
    发送的时候不用打乱发送,在客户端排序的时候打乱排序
    public static void main(String[] args) {

    String[] arr={"a的答案","b的答案","c的答案","d的答案"};//这添加字符串我就不用说了吧;;;;
    //标记正确答案
    String right="a的答案";
    aa(arr);
    Scanner scan=new Scanner(System.in);
    String a=scan.next();
    //输出匹配结果
    System.out.println(a.equals(right));
    }
    public static void aa(String[] arr){
    int dd=0;
    for (int i = 0; i < arr.length; i++) {
    int a=(int) (Math.random()*arr.length);
    String temp=arr[i];
    arr[i]=arr[a];
    arr[a]=temp;
    dd++;
    }
    System.out.println(dd);
    for (int i = 0; i < arr.length; i++) {
    System.out.print(arr[i]+" ");
    }
    }
    这样就获取到打乱后的排序;
    按这排序添加到listview中嘛;

    点赞 评论 复制链接分享
  • Hubert_bing Hubert__ 5年前

    非常感谢 qq_34920350 的回答

    我有思路了,下面这个方法就是我的解决办法,其参数是List形式的题目,第一位是题目,第二为是正确答案,其余是错误答案。

    exercise_answer 是TextView显示窗口此方法将错误答案随机排到A~D的选项

        /**
         * 更新题目的UI界面,将答案随机分布到选项
         */
        public void upDateQuestionUI(List<String> question) {
            Log.d("ExerciseActivity", "更新题目的UI界面");
            exercise_question_wordsKey.setText(question.remove(0));
            exercise_answer1.setText(question.remove((int) (Math.random() * question.size())));
            exercise_answer2.setText(question.remove((int) (Math.random() * question.size())));
            exercise_answer3.setText(question.remove((int) (Math.random() * question.size())));
            exercise_answer4.setText(question.remove((int) (Math.random() * question.size())));
        }
    
    点赞 1 评论 复制链接分享
  • Royal_lr Royal_lr 5年前

    可以在后台生成一个4以内的整数随机数,1对应A,2对应B,3对应C,4对应D,,

    点赞 1 评论 复制链接分享
  • sudaming88888888 明哥爱科学 5年前

    用Math.radom

    点赞 评论 复制链接分享

相关推荐