Java:如何创建一个数组并用构造函数中的对象填充它?

标签 java arrays constructor playing-cards

我正在尝试创建一个构造函数,该构造函数创建一个数组并用自定义对象填充该数组。该数组代表一副纸牌。

public class DeckOfCards {
public static Card[] deck = new Card[52];

//constructor
DeckOfCards(){
    Card[] deck = new Card[52];

    deck[0]=new Card("Ace","Clubs"); deck[1]=new Card("Two","Clubs"); 
    deck[2]=new Card("Three","Clubs");..(ect)...deck[49]=new 
    Card("Jack","Diamonds");
    deck[50]=new Card("Queen","Diamonds"); deck[51]=new Card("King","Diamonds");
}

我觉得这个构造函数应该创建一个数组并用卡片对象填充它,但它无法识别从 DeckOfCards() 实例化的任何对象作为数组。

最佳答案

您正在构造函数中再次声明牌组。我会用这种方式初始化牌组。迭代两个数组,最简单的一个。

DeckOfCards(){
    
    suit = ['Hearts','Diamonds','Clubs','Spades'];
    number=['Ace','One','Two','Three','Four','Five','Six','Seven','Eight','Nine','Ten','Jack','Queen','King'];
    
    for (int i=0;i<4;i++){
        for (int j=0;j<13;j++){
            deck[i+j]=new Card(number[j],suit[i]);
        }
    }
}

关于Java:如何创建一个数组并用构造函数中的对象填充它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43580493/

相关文章:

java - 如何在weka中实现成本敏感分类器?

java - 比较列表<String[]>

java - 替换字符串中的多个字符

java - Maven - 抑制 [WARNING] JAR 将为空 - 没有内容被标记为包含在 pom.xml 中

java - 将数组值放入参数化构造函数 Java

javascript - 根据文本中出现的数字排序

用 C 计算二维数组内的平均值

ruby - Array bang 方法的行为

c++ - 为什么我无法调用 'explicit a (string x)' ?

c# - 如何设置私有(private)构造函数?