java – 多项选择测试

正在进行单一选择和多项选择测试.

我有几个问题和每个问题的4个答案.

每个答案分配给单选按钮,我正在洗牌.
这是我正在洗牌的数组列表,其中Random是一个包含项目的数组列表,而r1,r2,r3,r4是单选按钮.

random.add(val);
Collections.shuffle(random);


r1.setText(random.get(0));
r2.setText(random.get(1));
r3.setText(random.get(2));
r4.setText(random.get(3));

我能够以混乱的方式显示答案,但是当我选择答案时,我需要显示答案是正确的还是错误的.

Sample question and options.
1. which language is used for android programming?
 A.PHP
 B.JAVA
 C.C
 D.C++

正确的答案是B我需要显示正确的答案是B.

如何实现这一点.

编辑:
我试过这个:

每个单选按钮的单击按钮分配值A,并将值与xml值进行比较,如果其正确的显示正确,但是当我混淆其不工作时.

编辑2
XML

<Question no="1" text="Which Programming language is used in android develoment" type="SCA" noc="4" jumble="NO" correctans="PHP">
<choice a = "PHP" flag="A"> 
<choice b = "JAVA" flag="B"> 
<choice c = "C" flag="C"> 
<choice d = "C++" flag="D">

解决方法

这是一个有点天真的解决方案,但它应该工作.
class Question {
    String message;
    String answer;
    List<String> options; //"Java","PHP",etc
}

在您的Question对象中调用Map的键
在你的单选按钮,做一些像r1.setText(random.get(0))

点击,做

String choice = null;
for (RadioButton rb : rBtns) {
    if (rb.isSelected) {
        choice = rb.getText(); break();
    }
}

if (choice.equals(question.getAnswer))
    return true; //correct
else
    return false; //wrong

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...