Ehm... Comparable deve essere implementato dalla classe che rappresenta gli oggetti da ordinare, non dal "contenitore".

Se a te interessa ordinare i regali, è Regalo che deve implementare Comparable (perchè è ciascun oggetto Regalo che deve essere comparato con gli altri oggetti Regalo). E' la classe Regalo che sa come comparare le istanze di sé stessa.

Così facendo, stai dicendo che ciascuna lista di regali può essere comparata con altre liste di regali (cioè, stai dicendo che i contenitori possono essere comparati fra di loro) e, oltretutto, in modo sbagliato.


Ciao.