Hello everyone, this is my first help post on daniweb so please excuse me if I have done something wrong. So as for my question, I have to shuffle an array of card objects. This is the code I have come up with so far.

```
public void shuffleDeck(){
Random seed = new Random(123456);
int n = deck.length;
int N = n - 1;
for(int i = 0; i < N; i++){
int k = seed.nextInt(deck.length);
Card swap = deck[k];
deck[N] = deck[k];
deck[k] = deck[N];
N--;
}
}
```

When done correctly the output is supposed to be 3d, Ah, 5d, Js, Td, Qs, 6c, 4d, Kc, and 9h as the top 10 cards when seeding in 123456. However, the output I receive is

Ace of Clubs

Two of Clubs

Three of Clubs

Four of Clubs

Five of Clubs

Six of Clubs

Seven of Clubs

Eight of Clubs

Nine of Clubs

Ten of Clubs

Jack of Clubs

Queen of Clubs

King of Clubs

Ace of Diamonds

Two of Diamonds

Three of Diamonds

Four of Diamonds

Five of Diamonds

Six of Diamonds

Seven of Diamonds

Eight of Diamonds

Nine of Diamonds

Ten of Diamonds

Jack of Diamonds

Queen of Diamonds

King of Diamonds

Nine of Diamonds

Eight of Diamonds

Ace of Hearts

Six of Clubs

King of Clubs

Three of Spades

Two of Hearts

Four of Hearts

Eight of Diamonds

Queen of Diamonds

Three of Spades

Five of Clubs

Five of Clubs

Two of Hearts

Eight of Diamonds

Eight of Clubs

Eight of Diamonds

Eight of Diamonds

Seven of Hearts

Three of Spades

Three of Diamonds

Six of Diamonds

Nine of Diamonds

Jack of Diamonds

Ace of Spades

Three of Diamonds

I would really appreciate if someone could tell me what I am doing wrong? Thank you.

p.s I believe there is a .shuffle() method but we are not allowed to use that I believe.

*Edited
by tingwong*