Заблокируйте рандомизированный массив, чтобы его можно было обрабатывать другими методами без рандомизации - PullRequest
0 голосов
/ 27 ноября 2018

Я играю в блэкджек в java и создал метод, который создает колоду карт, а затем метод, который перетасовывает колоду.Мне нужен список карт массива и другие функции, например, метод, который тянет карты, но каждый раз, когда я вызываю метод, он тасует новую колоду.Я хочу этого избежать, но я не знаю, как ...

Эти методы определяют и перетасовывают колоду:

public static String[] kortlek() {

    String suit[] = { "S", "D", "C", "H" };
    String rank[] = { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J",
            "Q", "K", "A" };
    String[] deck = new String[52];
    String[] shuffledDeck = new String[deck.length];
    int i = 0;

    for (i = 0; i < deck.length; i++) {
        deck[i] = rank[i % 13] + suit[i / 13];

    } // End of for loop

    deck = shuffledDeck(deck); 

    return deck;
}

public static String[] shuffledDeck(String [] shuffledDeck) {


    for (int i = 0; i < shuffledDeck.length; i++) {
        int index = (int) (Math.random() * shuffledDeck.length);

        String temp = shuffledDeck[i];
        shuffledDeck[i] = shuffledDeck[index];
        shuffledDeck[index] = temp;

    } // End of loop

    for (int i = 0; i < shuffledDeck.length; i++) {
        System.out.println(shuffledDeck[i]);
    }
    return shuffledDeck;
}

Этот метод с помощью метода actionListener кнопки тянет карту:

public static String drawCard(int wichCard) {

    String[] deck = kortlek();

    String drawnCard = deck[0 + wichCard];
    System.out.println("The drawn card is: " + drawnCard);

    return drawnCard; 
}

actionListener:

if (event.getSource() == drawCard) {            

    counter++;
    String drawnCard = cardDeck.drawCard(counter);
    player.setText("The drawn card is: " + drawnCard);  
}

Вывод будет:

first draw:
1  2  3  4  5
drawn card = 1

2nd draw:
5  3  2  1  4
drawn card = 3

3rd draw:
5  2  4  1  3
drawn card = 4

Я хочу, чтобы список не рандомизировался каждый раз, когда я беру карту.Как?

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...