为什么我收到错误:需要意外类型:找到变量:值

时间:2021-01-28 21:59:59

标签: java arrays dynamic

我正在尝试为卡片动态数组创建一个随机播放类 我的卡片数组包含花色和等级的字符串和值的 int

这是我得到所需错误的地方:找到的变量:值

private void Shuffle() { 
    for (int p  = 0; p <1000; p++) {
        int rand1 = (int) (Math.random()* 52);
        int rand2 = (int) (Math.random()*52);
        Card Temp = cards.get(rand1);
        cards.get(rand1) = cards.get(rand2);
        cards.get(rand2) = Temp;
    }
}

2 个答案:

答案 0 :(得分:1)

我相信,卡片是列表类型。 card.get(index) 返回 Card 的对象。一个对象可以分配给一个引用,而不是另一个对象。 因此,cards.get(rand1) = card.get(rand2) 就像将一个对象分配给另一个对象。类似于写1=2。

答案 1 :(得分:1)

我相信你正试图随机洗牌 1000 次,所以恕我直言,最简单的方法是这样的(假设你的牌在 ArrayList 中)

private void Shuffle() {
    for (int p = 0; p < 1000; p++) {
        int rand1 = (int) (Math.random() * 52);
        int rand2 = (int) (Math.random() * 52);
        Card card1 = cards.get(rand1);
        Card card2 = cards.get(rand2);
        cards.set(rand1, card2);
        cards.set(rand2, card1);
    }
}
相关问题