09. oktober 2004 - 19:21
Der er
4 kommentarer og 1 løsning
Løbe en hashtable igennem
Jeg har en hashtable jeg gerne vil løbe igennem, men ved ikke rigtig hvordan jeg skal gøre det. Jeg har prøvet med følgende kodestump (_table er min hashtable), men går i stå fordi jeg ikke kan få fat i element nummer i. Normalt slår man jo op pba. key'en, men jeg skal finde key'en pba. af en værdi som findes i et af objekterne. int i = 1; boolean found = false; while (i < _table.size() | !found) { /* xxxxxxx */ }
Annonceindlæg fra Kingston Technology
09. oktober 2004 - 19:24
#1
Element nummer i giver ingen mening for en hash table. Data er ikke ordnet. Men du kan selvfølgelg godt få alle par ud - kig lige på det her eksempel: import java.util.Arrays; import java.util.Hashtable; public class HashtableSort { public static void main(String[] args) { Hashtable hm = new Hashtable(); hm.put("c","3"); hm.put("b","2"); hm.put("a","1"); System.out.println(hm); Object[] sa = hm.keySet().toArray(); Arrays.sort(sa); for(int i = 0; i < sa.length; i++) { String key = (String)sa[i]; String value = (String)hm.get(key); System.out.println(key + "->" + value); } } }