我正在编写一个基于Java教科书中关于数组的章节中的一个论文,该文章说:
使用第5章中的Question类定义Quiz类。测验最多可包含25个问题。定义Quiz类的add方法以向测验添加问题。定义Quiz类的giveQuiz方法以向测验添加问题。定义Quiz类的giveQuiz方法,依次向用户显示每个问题,接受每个问题的答案,并跟踪结果。使用主方法定义一个名为QuizTime的类,该方法为测验选择问题,向用户提供测验,收集和检查答案,并打印最终结果。
我正在考虑的这项任务的程序开发计划可能是否正确:
创建测验类
在测验类中创建添加方法,以向测验添加问题
在Quiz类中定义giveQuiz方法,向用户提出问题
- 醇>
让它接受每个问题的答案,
5.跟踪答案结果
6.创建另一个名为QuizTime的类
- 创建主要方法。
醇>8.允许将问题作为数组输入到方法
的参数中的方法9.存储并检查答案
- 打印结果。
醇>
在我看来,它总是要求总共3个班级和一个主要方法。
但是,我觉得为什么需要这么多课程感到困惑。下面给出的Question类中的方法似乎有一些方法可以执行赋值给程序员的操作,但方法看起来是空的并且没有用处。我也对#6-10的程序开发计划感到困惑。我不确定如何制作一个数组来将问题和答案存储到方法中。
以下是Java教科书中已经给出的Question类:
//********************************************************************
// Question.java Author: Lewis/Loftus/Cocking
//
// Represents a question (and its answer).
//********************************************************************
public class Question implements Complexity
{
private String question, answer;
private int complexityLevel;
//-----------------------------------------------------------------
// Sets up the question with a default complexity.
//-----------------------------------------------------------------
public Question (String query, String result)
{
question = query;
answer = result;
complexityLevel = 1;
}
//-----------------------------------------------------------------
// Sets the complexity level for this question.
//-----------------------------------------------------------------
public void setComplexity (int level)
{
complexityLevel = level;
}
//-----------------------------------------------------------------
// Returns the complexity level for this question.
//-----------------------------------------------------------------
public int getComplexity()
{
return complexityLevel;
}
//-----------------------------------------------------------------
// Returns the question.
//-----------------------------------------------------------------
public String getQuestion()
{
return question;
}
//-----------------------------------------------------------------
// Returns the answer to this question.
//-----------------------------------------------------------------
public String getAnswer()
{
return answer;
}
//-----------------------------------------------------------------
// Returns true if the candidate answer matches the answer.
//-----------------------------------------------------------------
public boolean answerCorrect (String candidateAnswer)
{
return answer.equals(candidateAnswer);
}
//-----------------------------------------------------------------
// Returns this question (and its answer) as a string.
//-----------------------------------------------------------------
public String toString()
{
return question + "\n" + answer;
}
}
这是我创建的测验类,我没有参与过 得多。
public class Quiz
{
private String add;
public String addQuest (String addQ)//adds questions to quiz
{
add = addQ;
return add;//returninng the question
}
public String giveQuiz ()//give the quiz to the user
{
//accept and store each answer
return;
}
}
QuizTime类:
public class QuizTime
{
private String question;
public String[] Quiz() {
}
public String toString(String quest)
{
question = quest;
for (int i = 0; i < 25; i++)
Quiz[i] = new Quiz (question);
}
public String presents ()
{
for (int i = 0; i < 25; i++)
return quest[i];
}
}
我还没有制作主要方法,因为我仍然不知道这些类的开发是如何工作的。我为我在课堂和数组中的低技能道歉,因为我刚刚学会了它们。我非常感谢你们的帮助。
对于Quiz类,在第一个方法中,我尝试使用main方法插入可以存储在方法中的问题的参数。但我想知道是否有更简单的方法可以在方法内存储25个测验问题参数,如果可能的话。我正在尝试如果我在正确的轨道上,请告诉我。非常感谢你。
答案 0 :(得分:1)
但我想知道是否有更简单的方法可以在方法中存储25个测验问题参数(如果可能的话)
不需要 有25个测验问题参数。这就是为什么你应该使用你学校的阵列。
看起来像这样:
public Question[] getQuestions(){
return questions;
}
如果您需要通过某种方法传递所有问题,原因如下:
public void sendQuestions(Question[] ques){
//do whatever
}