我正在运行我的主要 class ,并且我想运行一个单独的 class 以洗牌数字,然后将洗牌后的数字返回到我的主要 class 。在我的混洗 class 中,我有return语句...但是现在我该怎么办?如何在主类中使用int数组的随机顺序?

这是我的洗牌课:

public class Shuffle {
public static int[] getShuffle() {
    int[] cards = new int[52];
    ArrayList<Integer> cards_objs = new ArrayList<Integer>();

    for (int i = 0; i < cards.length; i++) {
        cards_objs.add(i);
    }

    Collections.shuffle(cards_objs);

    for (int i = 0; i < cards.length; i++) {
        cards[i] = cards_objs.get(i);

    }

    return cards;
}

}

我正在打纸牌游戏(如果你不知道的话);

我想使用这种混洗类,以便对卡片进行混洗……但没有卡片出现过一次。

当我归还卡片时,如何在游戏类中使用它们?
例如,如果数组中的第一个数字为1,则卡片为俱乐部Ace,
如果数字为2,则卡片为钻石A。等等...
很抱歉没有发布足够的信息...我是java的新手(如您所知)

所有帮助将不胜感激,

-史蒂夫

编辑:
我发现我的问题是什么,我认为我没有清楚地说明我的问题是什么。但是,感谢大家的帮助,它为我提供了处理该项目的不同方法的想法。

最佳答案

我认为使用enum可以更好地实现Card Game。

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

// This is just sample example  and it is just to show an approach. I had not enough time    to make code perfect but it works fine.
public enum Deck
{
DECK;
enum Rank
{
    DEUCE(2), THREE(3), FOUR(4), FIVE(5), SIX(6),
    SEVEN(7), EIGHT(8), NINE(9), TEN(10), JACK(10), QUEEN(10), KING(10), ACE(11);

    Rank(int rank)
    {
        this.rank = rank;
    }

    private final int rank;

}

enum Type
{
    SPADES,
    HEARTS,
    DIAMONDS,
    CLUBS;
}

class Card
{
    private final Rank rank;
    private final Type type;

    Card(Rank rank, Type type)
    {
        this.rank = rank;
        this.type = type;
    }

    @Override
    public String toString()
    {
        return type.name() + rank.name();
    }

}

static List<Deck.Card> cards = new ArrayList<Deck.Card>();
static
{
    for (Rank rank : Deck.Rank.values())
    {
        for (Type type : Deck.Type.values())
        {
            cards.add(DECK.new Card(rank, type));
        }
    }

}

List<Deck.Card> shuffle()
{
    Collections.shuffle(cards);
    System.out.println(cards);
    System.out.println(cards.size());
    return Collections.unmodifiableList(cards);
}

public static void main(String[] args)
{
    DECK.shuffle();
}
}

10-07 19:21
查看更多