Buongiorno a tutti! Questo è il mio primo post qui e subito vi piazzo un bel quesito a cui ancora non riesco a dare una soluzione.
Premetto che questa è una traccia di un esercizio di un esame che dovrò sostenere tra una settimana ( ma ,purtroppo NON è l'esercizio che farò tra una settimana)
Il problema sta nell'immutabilità della classe che devo costruire! Penso che una soluzione adatta sia l'utilizzo di clone() per effettuare una deep copy dell'oggetto...Ma il dubbio atroce che mi perseguitaSi richiede il progetto di un tipo di dato CollezioneDinamicaImmutabile (CDI) che
rappresenta collezioni dinamiche ma non mutabili di oggetti generici: ogni aggiunta o rimozione di
un elemento da una collezione C richiede la creazione di una nuova collezione che differisce da C per un elemento. /* ... */ È lasciata libera scelta circa la gestione della omogeneità/disomogeneità (di tipo)
degli elementi della collezione.
Si richiede che il costruttore di tale classe prenda in input una generica collezione dotata di iteratore.è questo: visto che la collezione di oggetti che passo al costruttore di CDI può contenere qualsiasi tipo di oggetto, potrebbe contenere anche un riferimento ad un'altra collezione ( ed inoltre questa situazione si potrebbe ripetere all'infinito con ogni collezione ).
Come faccio io a capire quando fermarmi nell'utilizzare clone() ? esiste un modo per riconoscere se un oggetto in una collezioneè a sua volta un'altra collezione (che quindi richiederebbe un clone() di ogni signolo suo elemento)?
Vi ringrazio per la disponibilità!
Christian.