【问题标题】:mix up the values of Java linked List issue混淆Java链表问题的值
【发布时间】:2014-11-14 21:56:32
【问题描述】:

我正在尝试使用Collections.shuffle 混合我的链接列表的值,但每次这是应该显示和混合我的卡片列表的代码时,我总是得到相同的顺序:

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));
        }
      }

    }

  }

【问题讨论】:

  • 在添加它们之前先随机播放

标签: java algorithm oop for-loop linked-list


【解决方案1】:
this.cardList = new LinkedList<Card>();
    Collections.shuffle(cardList);

你正在洗一个空列表。

尝试将shuffle() 行移到方法的末尾。

【讨论】:

    【解决方案2】:

    您应该先实现您的 cardList,然后才能对其进行洗牌

    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);     
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-27
      • 2016-03-08
      • 2015-06-14
      • 1970-01-01
      • 2016-06-28
      相关资源
      最近更新 更多