Allora:Originariamente inviato da alemagno
Farò una classe per il film, uno per l'elenco dei metodi, una classe per la comparazione di film... ma poi? Passi successivi?
1) Sicuramente una classe es. Film per modellare il film con tutte le proprietà che hai citato (chiaramente dovrai valutare tu come rappresentare certe proprietà es. i "Premi").
2) Ti consiglierei di fare una classe es. LettoreFileFilm che si occupa solo di leggere i film da file. Visto che il numero di film è arbitrario e non noto a priori, personalmente ti suggerisco di fare un metodo di istanza che legge e restituisce un film per volta.
Non so se conosci la classe java.io.BufferedReader, essa ha un metodo readLine() che legge 1 riga per volta e se non ci sono più righe restituisce null. Ecco, in modo similare puoi fare un metodo es. Film leggiFilm() e se non ce ne sono più (end-of-file), restituisci null.
E internamente a questa classe puoi benissimo sfruttare proprio un BufferedReader!
Se c'è qualcosa di "malformato", puoi lanciare una eccezione, generica o magari specifica che definisci tu.
3) Per il resto, cioè la gestione dell'insieme dei film e delle ricerche, dipende molto da come vuoi gestire tali ricerche, nel senso: se ti basta fare sort su una lista e ricerche "lineari" su una lista o vuoi creare un tuo "insieme" che sia più "indicizzato" e/o che offra metodi es. getFilmPerAnno(int anno)
Per il momento non mi viene in mente altro, qualche dritta comunque te l'ho data, spero.![]()