2014-11-14 47 views
0

我試圖混淆我的鏈接列表的值使用Collections.shuffle但我總是得到相同的順序每次這是代碼誰應該顯示和混淆我的列表卡:混淆了Java鏈接列表問題的值

public Deck(int nbBox) { 
    this.cardList = new LinkedList<Card>(); 
    Collections.shuffle(cardList); 
    for (int i = 0; i < nbBox; i++) { 
     for (Color col : Color.values()) { 
     for (Value val : Value.values()) { 
      cardList.add(new Card(val, col)); 
     } 
     } 

    } 

    } 
+1

您洗牌之前實現你cardList – Brendan 2014-11-14 21:58:58

回答

1
this.cardList = new LinkedList<Card>(); 
    Collections.shuffle(cardList); 

你洗牌空列表。

嘗試將shuffle()行移動到方法的末尾。

1

你首先應該能夠加入他們之前將它洗

public Deck(int nbBox) { 
    this.cardList = new LinkedList<Card>(); 
    for (int i = 0; i < nbBox; i++) { 
     for (Color col : Color.values()) { 
     for (Value val : Value.values()) { 
      cardList.add(new Card(val, col)); 
     } 
     } 
    } 
    Collections.shuffle(cardList);  
}