Così ho due domande su HashMap
s in Java:Modo corretto per inizializzare HashMap e HashMap può contenere diversi tipi di valore?
Qual è il modo corretto per inizializzare un
HashMap
? Penso che potrebbe essere meglio nella mia situazione da usare:HashMap x = new HashMap();
Ma Eclipse di continuo suggerendo che io uso:
HashMap<something, something> map = new HashMap();
Che è meglio?
Un
HashMap
può contenere diversi tipi di oggetti/tipi di dati come valori? Ad esempio, sarebbe questo lavoro ed essere OK:map.put("one", 1); map.put("two", {1, 2}); map.put("three", "hello");
Nella prima
put()
, voglio unaint
come valore, nel secondo unint[]
, e la terza una stringa. Va bene farlo in Java conHashMap
s? Inoltre, va bene memorizzare un valoreHashMap
come valore all'interno diHashMap
?
Qual è la differenza tra fare una HashMap map = new ... e Map map = new ...? O fanno la stessa cosa? –
sepiroth
Fanno la stessa cosa, è solo che il tuo riferimento viene digitato come una mappa (l'interfaccia) invece di HashMap (l'implementazione) in modo che l'implementazione possa essere facilmente modificata senza influenzare più di una riga di codice. – Yishai