Java实现随机题库-全站最呆瓜思想,保证你能学会
本文将通过一个简单的例子,详细讲解如何用Java实现一个随机抽取题目的题库系统。我们将采用面向对象的设计思想,并结合具体的代码示例,让您轻松上手。
public class Question {
private int id;
private String question;
private String[] options;
private int answer;
// 构造方法、getter和setter方法
// ...
@Override
public String toString() {
// 返回问题的字符串表示,方便打印
StringBuilder sb = new StringBuilder();
sb.append(id).append(". ").append(question).append("\n");
for (int i = 0; i < options.length; i++) {
sb.append((char) ('A' + i)).append(". ").append(options[i]).append("\n");
}
return sb.toString();
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class QuestionBank {
priv ate List<Question> questions = new ArrayList<>();
// 添加题目
public void addQuestion(Question question) {
questions.add(question);
}
// 随机抽取n道题
public List<Question> getRandomQuestions(int num) {
if (num > questions.size()) {
throw new IllegalArgumentException("题目数量不足");
}
List<Question> copy = new ArrayList<>(questions);
Collections.shuffle(copy);
return copy.subList(0, num);
}
}
public class Main {
public static void main(String[] args) {
QuestionBank bank = new QuestionBank();
// 创建一些题目,并添加到题库
// ...
List<Question> randomQuestions = bank.getRandomQuestions(10);
for (Question question : randomQuestions) {
System.out.println(question);
}
}
}
本文通过一个简单的例子,展示了如何用Java实现一个随机题库系统。这个系统可以作为基础,进行更复杂的功能扩展。希望这个教程能帮助你快速入门Java编程,并为你提供一个实际的练手项目。
如果你有其他问题或需要更深入的讲解,欢迎随时提问!
你可以尝试以下问题:
让我们一起探索Java编程的乐趣吧!