buona sera,

ho scritto un programma che ha come classe un generatore di numeri casuali non ripetibili...
ora vi implemento il codice:
codice:
CLASSE NumeroCasuale

import java.util.Random;

public class NumeroCasuale {

    private int numero;
    private int [] controllo=new int [13];
    private Random casuale;
    private boolean b;

    //costruttori
    public NumeroCasuale () {
        this.numero=0;
        this.casuale=new Random ();
        this.b=false;
    }

    public NumeroCasuale (int n,Random c,boolean b) {
        this.numero=n;
        this.casuale=c;
        this.b=b;
    }

    //get-set di numero
    public int getNumero () {
        return numero;
    }
    public void setNumero (int n) {
        this.numero=n;
    }

    //metodo int controllo
    public int controllo () {
        for (int i=0;i<controllo.length;i++) {
            controllo[i]=100;
        }

        return controllo[13];
    }

    //metodo int numero
    public int numero () {
        numero=casuale.nextInt(52);
        this.b=false;

        for (int i=0;i<controllo.length;i++) {
            if (controllo[i]==100) {
                controllo[i]=numero;
            }
        }

        do {
            for (int i=0;i<controllo.length;i++) {
                if (numero==controllo[i]) {
                    b=true;
                    numero=casuale.nextInt(52);
                    break;
                }
                if (i==controllo.length) {
                    return numero;
                }
            }
        } while (b);

        return numero;
    }


}
codice:
CLASSE Main

public class Main {
    public static void main(String[] args) {

        //creazione 4giocatori - 2carte
        final int X=2;
        final int Y=4;
        NumeroCasuale [][] giocatori=new NumeroCasuale [X][Y];


        //impostare le carte ai giocatori
        for (int x=0;x<X;x++) {
            for (int y=0;y<Y;y++) {
                giocatori[x][y]=new NumeroCasuale ();
            }
        }


        //stampare le carte dei giocatori
        for (int x=0;x<X;x++) {
            for(int y=0;y<Y;y++) {
                System.out.println(giocatori[x][y]);
            }
        }

    }
}
il problema persiste nel output, infatti non mi stampa una serie di numeri casuali non ripetibili da 0 a 51 bensì questo:

poker.NumeroCasuale@42e816
poker.NumeroCasuale@9304b1
poker.NumeroCasuale@190d11
poker.NumeroCasuale@a90653
poker.NumeroCasuale@de6ced
poker.NumeroCasuale@c17164
poker.NumeroCasuale@1fb8ee3
poker.NumeroCasuale@61de33

grazie dell'attenzione