我现在有两节课,我想做一个T / F问题测验,我被困在如何使用这两节课中
public class TFQuestion {
private String question;
private boolean answer;
private int skillLevel;
public TFQuestion(String question, boolean isTrue, int level) {
this.question = question;
this.answer = isTrue;
this.skillLevel = level;
}
public void setQuestion(String text){
this.question = text;
}
public String getQuestion(){
return this.question;
}
public void setAnswer(boolean isTrue){
this.answer = isTrue;
}
public boolean getAnswer(){
return this.answer;
}
public void setSillLevel(int level){
this.skillLevel = level;
}
public int getSkillLevel(){
return this.skillLevel;
}
}
public class TFQuestionList {
private ArrayList<TFQuestion> allQuestions;
public TFQuestionList(int level) {
allQuestions = new ArrayList<TFQuestion>();
TFQuestion quest;
if (level == 0) {
quest = new TFQuestion("question1", true, level);
allQuestions.add(quest);
quest = new TFQuestion("question2.", false, level);
allQuestions.add(quest);
quest = new TFQuestion("question3", true, level);
allQuestions.add(quest);
quest = new TFQuestion("question4", false, level);
allQuestions.add(quest);
} else if (level == 1) {
quest = new TFQuestion("Question 11", true, level);
allQuestions.add(quest);
quest = new TFQuestion("Question 12", false, level);
allQuestions.add(quest);
quest = new TFQuestion("Question 13", true, level);
allQuestions.add(quest);
quest = new TFQuestion("Question 14", false, level);
allQuestions.add(quest);
} else if (level == 2) {
quest = new TFQuestion("Question 21", true, 2);
allQuestions.add(quest);
quest = new TFQuestion("Question 22", false, 2);
allQuestions.add(quest);
quest = new TFQuestion("Question 23", true, 2);
allQuestions.add(quest);
quest = new TFQuestion("Question 24", false, 2);
allQuestions.add(quest);
}
}
对于int级别,我已经从另一个活动中获得了它,我只是很难访问这两个类,例如如何在TFQuestion中使用TFQuestionList,应该使用哪种方法? 我无法将它们组合在一起以访问TFQuestionList中需要的信息以及在TFQustion中使用方法。 谢谢您的帮助!
答案 0 :(得分:0)
如果我理解您的问题,则不会将TFQuestionList
放在TFQuestion
访问的位置。您在这里有一个相当不错的模型,因为您已经对一个问题和一个问题列表进行了建模。您已经设置好它,以便构造函数获得一个级别并添加问题。
因此,撇开可修改性的某些方面并公开内部结构,我想您想要做的就是向TFQuestionList
添加一种获取方法来获取问题:
public List<TFQuestion> getQuestions() {
return allQuestions;
}
因此,您将/将要在某个地方用该级别实例化TFQuestionList
,然后您将需要某种显示循环来提出问题(并从用户那里收集输入)。您尚未显示有关如何执行该循环部分的代码,但是从概念上讲,它很简单。