Guarda ... non so cosa devi fare di preciso, con cosa parti ecc... Ti posso dire cosa farei io che possa essere abbastanza "logico":
codice:
class EstremiPercorso
{
private String citta1;
private String citta2;
public EstremiPercorso (String citta1, String citta2)
{
this.citta1 = citta1;
this.citta2 = citta2;
}
// ... metodi getter, poi equals() e hashCode() ...
}
class MappaPercorsi
{
private HashMap<EstremiPercorso,ArrayList<Integer>> map;
public MappaPercorsi ()
{
map = new HashMap<EstremiPercorso,ArrayList<Integer>> ();
}
public void add (EstremiPercorso ep, int tempo)
{
ArrayList<Integer> listaTempi = map.get (ep);
if (listaTempi == null)
{
listaTempi = new ArrayList<Integer> ();
map.put (ep, listaTempi);
}
listaTempi.add (tempo);
}
// ... altri metodi ...
}
Poi semplicemente:
codice:
MappaPercorsi mp = new MappaPercorsi ();
EstremiPercorso ep = new EstremiPercorso ("Parigi", "Lione");
mp.add (ep, 40);
mp.add (ep, 30);