2016-02-28 273 views
1

我正在研究一個瑣事項目。我創建了一個名爲Trivia的類,它具有設置問題和答案等所有必要的方法。在測試者類中,我需要創建一個包含5個Trivia對象的數組,以設置5個問題的答案,問題和點值。我很困惑如何設置值。我創建了Trivia對象的數組以及5個對象的空間。這是我的代碼,謝謝!創建I類對象數組創建

public class Trivia { 
private String question; 
private String answer; 
private int points; 

public Trivia() { 
    question = " "; 
    answer = " "; 
    points = 0; 
} 

public String getQuestion() { 
    return question; 
} 

public String getAnswer() { 
    return answer; 
} 

public int getPoints() { 
    return points; 
} 

public void setQuestion(String q) { 
    question = q; 
} 

public void setAnswer(String a) { 
    answer = a; 
} 

public void setPoints(int p) { 
    points = p; 
} 

} 

(測試儀類)

public class Driver { 

public static void main(String[] args) { 
    Trivia[] t = new Trivia[5]; 
    for (int i = 0; i <= 5; i++) { 
     t[i] = new Trivia(); 
    } 

} 

} 
+0

而不是你的'for'循環中'i <= 5;'嘗試'我<5;' – AMACB

+0

哎呀,我的錯。 「=」不知不覺地滑了下來 – JavaGuy1

回答

1

這條線陣列創建一個新的Trivia並將其存儲:

for (int i = 0; i <= 5; i++) { 
    t[i] = new Trivia(); 
} 

您可以使用它來分配的問題。但是,所有的問題都將隨後是相同的...

for (int i = 0; i <= 5; i++) { 
    t[i] = new Trivia(); 
    t[i].setQuestion("bla"); 
} 

可以可能要創建循環之後的個體問題:

for (int i = 0; i <= 5; i++) { 
    t[i] = new Trivia(); 
} 
t[0].setQuestion("question1"); 

進行到開發應用程序,你將不得不去想一個方便易存儲問題的方式。將它們硬編碼到Java代碼中對於開始是有好處的,但是您必須重新編譯,每次問題都會發生變化。

也許使用.property文件包含所有問題文本可能是一個選項。

+0

如果我把't [i] .setQuestion(「bla」);'放在循環中,它不會爲所有5個問題設置相同的問題嗎? – JavaGuy1

+0

好的,我明白了。我忘了t [0] t [1]等。謝謝! – JavaGuy1

+0

我會在8分鐘內接受,謝謝 – JavaGuy1

1

你可以做somenthng這樣的:

Trivia[] t = new Trivia[5]; 
    for (int i = 0; i < 5; i++) { 
     Trivia tx = new Trivia(); 
     tx.setQuestion("xxxx"); 
     tx.setAnswer("xxxx"); 
     tx.setPoints(0); 
     t[i] = tx; 
    } 
0

設置使用您在您的類中聲明的setter方法值。

例子:

t[i].setAnswer("answer"); 
0

也許是這樣的:

Trivia[] t = new Trivia[5]; 
    for (int i = 0; i <= 5; i++) { 
     t[i] = new Trivia(); 
     t[i].setQuestion("What is "+i+"+"+i+"?"); 
     t[i].setAnswer(""+(2*i)); 
    } 

此使用您setter方法的方法設置的問題和答案。