Ho la seguente mappa:
Map<Double, List<SoundEvent>> soundEventCells = new HashMap<Double, List<SoundEvent>>();
Questo HashMap
mappa double
valori (che sono punti nel tempo) alla corrispondente SoundEvent
'cella': ogni 'cella' può contenere un numero di SoundEvent
s. Ecco perché è implementato come List<SoundEvent>
, perché è esattamente quello che è.
Per motivi di migliore leggibilità del codice, ho pensato di implementare una classe interna statica molto semplice in questo modo:
private static class SoundEventCell {
private List<SoundEvent> soundEvents = new ArrayList<SoundEvent>();
public void addEvent(SoundEvent event){
soundEvents.add(event);
}
public int getSize(){
return soundEvents.size();
}
public SoundEvent getEvent(int index){
return soundEvents.get(index);
}
// .. remove() method unneeded
}
E la dichiarazione della mappa (e molti altri codici) apparirebbe meglio, ad esempio:
Map<Double, SoundEventCell> soundEventCells = new HashMap<Double, SoundEventCell>();
Questo è eccessivo? Lo faresti nei tuoi progetti?