我是 Java 新手,当我尝试创建 DeckofCards 类的实例时,我的 main 函数中出现错误。 DeckofCards 类应该是“Cards”对象的私有(private)数组。我认为我的问题是 DeckofCards 类中的某些内容,出于某种原因它不是我认为的数组?也许我创建错了?
我的主要错误是 '(' 或 '[' 预期 和 需要数组,但已找到 DeckofCards
这是我的主要功能:
public static void main(String[] args) {
Card myCard = new Card(13,1);
System.out.println(myCard.getSuit());
System.out.println(myCard);
DeckofCards myDeck = new DeckofCards; //error here
for(int i=0; i<53; i++) {
System.out.println(myDeck[i]); //second error here
}
}
这是我的 DeckofCards 类(class):
public class DeckofCards {
private Card[] deck = new Card[52];
public DeckofCards(){
int i = 0;
for(int s = 1; s<5; s++){
for(int r = 1; r<14; r++){
deck[i].rank = r;
deck[i].suit = s;
i++;
}
}
}
}
如果有人能告诉我是否缺少一些语法或其他东西,那就太好了!谢谢。
最佳答案
您需要调用构造函数:
DeckofCards myDeck = new DeckofCards(); // note parens!
在 Java 中,括号是必需的。
在构造函数中,您还需要将数组的每个元素初始化为新的 Card
对象:
for(int s = 1; s<5; s++){
for(int r = 1; r<14; r++){
deck[i] = new Card();
deck[i].rank = r;
deck[i].suit = s;
i++;
关于java - 在 Java 中创建对象类数组的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23188454/