In effetti è proprio così.
Comunque provo a spiegare il problema anche se non mi è semplicissimo perchè non sono troppo pratico.

1) Ho creato un array di Tavoli.
2) Alla fine della creazione del primo tavolo l'utente sceglie se crearne un altro oppure fare una Ricevuta.
3) Se decide per la ricevuta ho creato un'altro array contenente oggetti Ricevuta.
4) Alla fine della creazione della prima Ricevuta l'utente può scegliere se fare un'altra ricevuta oppure continuare a creare altri Tavoli.

Il problema si riscontra proprio quando in questo punto l'utente sceglie di continuare a creare tavoli, lasciando l'array delle ricevute incompleto.

Da quel poco che so dovrei fare uso della classe ArrayList per aumentare o diminuire la quantità di Ricevute... ma non la so ancora usare.

SE RIUSCITE A CAPIRE COSA INTENDO FATEMI SAPERE, PER FAVORE, SE LA STO PENSANDO GIUSTA O SE SONO ANCORA INDIETRO NELLO STUDIO DI JAVA!!!