用对象填充java数组

时间:2015-04-27 14:09:49

标签: java arrays object

我必须在java中编写一个测验工具,我被困住了。 我只想创建一个问题并填写答案。答案应该在数组中“antworten”。

MainQuiz.java类:

import java.lang.*;
public class MainQuiz {

    public static void main(String args[]){

        QuizFrage qf = new QuizFrage ("Welche Lebensmittel sind gesund?" ,
                 new QuizAntwort ("Apfel" ,"A" , true),
                 new QuizAntwort ("Chips", "B", false),
                 new QuizAntwort ("Orange" , "C", true),
                 new QuizAntwort ("Schokolade" , "D", false));
                qf.FrageStellen();
    }
}

QuizAntwort.java类:

public class QuizAntwort {
    protected String antwortxt;
    protected Boolean istrichtig;
    protected CharSequence antwortchr;



    public QuizAntwort(String string, String string2, boolean b) {
        // TODO Auto-generated constructor stub
    }




    public boolean checkAntwort(String gewaehlteAntworten) {
        if (gewaehlteAntworten.contains(antwortchr)) return true; else return false; 
    }
}

和QuizFrage.java类

public class QuizFrage {
private String fragentext;
private QuizAntwort antworten[];



public QuizFrage(String FrageString, QuizAntwort quizAntwort1,
        QuizAntwort quizAntwort2, QuizAntwort quizAntwort3,
        QuizAntwort quizAntwort4){

    fragentext = FrageString;

}



public void FrageStellen(){

    System.out.println(fragentext);
    for (QuizAntwort curantwort: antworten){
        System.out.println(curantwort.antwortchr + ": " + curantwort.antwortxt);
    }
} 
}

如何使用quizantwort1,quizantwort2填充数组“antworten”?

2 个答案:

答案 0 :(得分:8)

使用varargs

public QuizFrage(String fragentext, QuizAntwort... antworten){
    this.fragentext = fragentext;
    this.antworten = antworten;
}

答案 1 :(得分:3)

简单:

antworten = new QuizAntwort[] {quizAntwort1, quizAntwort2,
                               quizAntwort3, quizAntwort4};