|
| HashMap/LinkedHashMap Fra : mettemusens@hotmail.~ |
Dato : 15-11-05 13:24 |
|
Hejsa
Jeg har et lille program, hvor jeg skal udskrive alle elementer fra et
sådant HashMap.
(Og ja, det skal været HASH, idet det også bruges til direkte
opslag).
Hvordan skriver man dem alle ud fra en ende af? Synes ikke lige jeg
kan finde nogle passende metoder til formålet.
mvh
Mette
| |
Arne Vajhøj (15-11-2005)
| Kommentar Fra : Arne Vajhøj |
Dato : 15-11-05 13:53 |
|
mettemusens@hotmail.com wrote:
> Jeg har et lille program, hvor jeg skal udskrive alle elementer fra et
> sådant HashMap.
> (Og ja, det skal været HASH, idet det også bruges til direkte
> opslag).
>
> Hvordan skriver man dem alle ud fra en ende af? Synes ikke lige jeg
> kan finde nogle passende metoder til formålet.
Prøv:
Iterator it = m.keySet().iterator();
while (it.hasNext()) {
K key = (K)it.next();
V value = (V) map.get(key);
System.out.println(key + "->" + value);
}
Arne
| |
Søren Berg Glasius (15-11-2005)
| Kommentar Fra : Søren Berg Glasius |
Dato : 15-11-05 13:59 |
|
Hej Mette
Prøv
Map m = new HashMap();
tilføj elementer til map.
Iterator i = m.keySet().iterator();
while(i.hasNext()) {
Object key = i.next();
Object value = m.get(key);
// Gør med dine key/value objekter, hvad du måtte lyste....
}
Alternativt kan bruges enumeration:
Enumeration e = m.keys();
while(e.hasMoreElements()) {
Object key = e.nextElement();
//etc....
}
Håber det er til hjælp?
Jeg har ikke nogen præferencer i forhold til hvilken en der er
lettest/bedst - har andre det?
JavaDoc siger:
NOTE: The functionality of this interface is duplicated by the Iterator
interface. In addition, Iterator adds an optional remove operation, and
has shorter method names. New implementations should consider using
Iterator in preference to Enumeration.
hmmmm...
MVH
Søren
mettemusens@hotmail.com wrote:
> Hejsa
>
> Jeg har et lille program, hvor jeg skal udskrive alle elementer fra et
> sådant HashMap.
> (Og ja, det skal været HASH, idet det også bruges til direkte
> opslag).
>
> Hvordan skriver man dem alle ud fra en ende af? Synes ikke lige jeg
> kan finde nogle passende metoder til formålet.
>
> mvh
> Mette
>
| |
Johnnie Hougaard Nie~ (15-11-2005)
| Kommentar Fra : Johnnie Hougaard Nie~ |
Dato : 15-11-05 18:49 |
|
Søren Berg Glasius wrote:
> Jeg har ikke nogen præferencer i forhold til hvilken en der er
> lettest/bedst - har andre det?
Jeg foretrækker Iterator frem for Enumeration, bl.a. fordi det er en
nyere mekanisme, en del af Java Collections Framework hvor den blev
indført som erstatning for Enumeration.
Kortere metodenavne gør heller ikke noget. Og så passer iteratorer godt
sammen med Java 5, hvor den nye "foreach" baserer sig på at klassen
implementerer interface Iterable.
Med andre ord ser jeg Enumeration som en lidt forældet konstruktion,
som der dog er brug for til klasser som ikke er kommet med på at bruge
Iterator.
| |
|
|