Java:初始化新的LinkedList集合
我试图建立一个简单的纸牌游戏作为个人锻炼。我有一套Java:初始化新的LinkedList集合,java,collections,linked-list,Java,Collections,Linked List,我试图建立一个简单的纸牌游戏作为个人锻炼。我有一套卡片,里面应该有我的牌组。为了初始化它,我想给它传递一个牌组应该是什么样子的映射-一个整数数组(1到n,1到2),其中(n,1)包含一个在card类中解析的牌类型,(n,2)包含我想要在牌组中使用的牌的数量。但是,我在处理NullPointer异常时遇到了困难。这是我的卡片课程: import java.util.LinkedList; public class Cards{ private LinkedList<Card>
卡片
,里面应该有我的牌组。为了初始化它,我想给它传递一个牌组应该是什么样子的映射-一个整数数组(1到n,1到2),其中(n,1)包含一个在card类中解析的牌类型,(n,2)包含我想要在牌组中使用的牌的数量。但是,我在处理NullPointer异常时遇到了困难。这是我的卡片
课程:
import java.util.LinkedList;
public class Cards{
private LinkedList<Card> CardDeck;
...
public boolean MakeDeck(int[][] DeckMap){
/*feed the function a 2D int array (0 to n, 0 to 1)
@Param - DeckMap[][] - [n][0] to contain card type
[n][1] to contain DupeCount*/
//search the array for duplicates
for (int i = 0; i < DeckMap.length; i++){
int hold = DeckMap[i][0];
DeckMap[i][0] = -10;
for (int j = 0; j< DeckMap.length; j++){
if (DeckMap[j][0] == hold){
DeckMap[i][0] = hold;
return false;
}
}
DeckMap[i][0] = hold;
}
//Add the cards
// tried variations on this: CardDeck = new LinkedList<Card>;
for (int i = 0; i< DeckMap.length; i++){
Card cC = new Card();
cC.initializeCard(DeckMap[i][0], DeckMap[i][1]);
CardDeck.addLast(cC);
}
return true;
}
}
而不是这个
私有LinkedList卡片组代码>
使用此private LinkedList CardDeck=new LinkedList()代码>
它正在抛出NPE,因为cardDeck
尚未初始化
public class Card {
private static String cName;
private static int cDuplicateCount;
public static cEffect myEffects;
public final void initializeCard(int inEffect, int DupeCount){
myEffects = new cEffect();
myEffects.setEffect(inEffect);
cName = myEffects.getCardType();
cDuplicateCount = DupeCount;
}
...
}