Как исправить массивы, заполненные нулями, даже после кажущейся ненулевой инициализации? - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь создать массив случайных целых чисел, которые не повторяются .Вместо этого мой массив полон нулей.Нам не разрешено использовать вещи вне нашего обучения, такие как ArrayList или класс Arrays и тому подобное.(Бесит, но я справляюсь).

Я не пробовал никаких других методов, так как я все еще ОЧЕНЬ новичок, но я использовал маленькие итераторы и контрольные точки вывода, чтобы увидеть, что происходит гораздо проще.Случайные значения инициализируются, но просто не сохраняются.

private Card[] returnShuffled(Card[] cards) {
    Card[] shuffled = cards;                        //Card array
    int[] randomIndexes = new int[cards.length];    //Random ?>NONREPEATING integer array.
    int randomValue;                                //Value entered into Random Indexes.
    for(int x = 0; x < randomIndexes.length; x++) {
        do {
        randomValue = (int) (Math.random()*52);
            System.out.println(randomValue);
        } while(!(search(randomIndexes, randomValue)>-1));
        randomIndexes[x] = randomValue;             //Point of problem: Printing out the Array after loop gives a list of 0s
    }
    for(int x = 0; x < shuffled.length; x++) {
        shuffled[x] = cards[randomIndexes[x]];
    }
    return shuffled;
}

private int search(int[] random, int value) {
int token = -1;
    for(int i = 0; i < random.length; i++) {
        if(random[i]==value) {
            token = i;
            break;
        }
    }
    return token;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...