21. juli 2003 - 21:13Der er
8 kommentarer og 2 løsninger
Lav udtræk fra HashMap
Hejsa, Jeg er ved at lave et program, der bruger HashMap som datastruktur. Og jeg har fået lavet et objekt som er gemt rigtigt (tror jeg :))
Jeg vil nu gerne tjekke om dette er gemt i HaspMap'en, ved at lave en metode der trækker informationerne ud, og udskriver dem på skærmen. Hvordan gør jeg det??
Det jeg havde tænkt mig, var at få printet de keys ud der er gemt, og så derudfra vælge en bestemt key, hvor man så derefter får resten af oplysningerne fra det bestemte objekt.
Er det den rigtige måde at gøre det på, eller skal det gøres på en anderledes måde?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Det er nemt at få et enkelt objekt ud. Bare kald get med den rigtige key. Og så skal du naturligvis have printet det objekt ud, men det er jo uafhængigt af HashMap.
For at hive alle elementer i en HashMap er der flere metoder. Jeg plejer at bruge keyset og iterator til at hente alle keys ud med i en løkke.
Et eksempel man kan relatere til skolen/hverdagen:
import java.util.*;
class BogArkiv { public static void main(String[] args) { HashMap arkiv = new HashMap();
Bog bog = new Bog("Java for begyndere", "Peter Bell", "9993-43-44"); arkiv.put(bog.getISBN(), bog); bog = new Bog("Java - den videre rejse", "Aben Charlie", "1245-66-22"); arkiv.put(bog.getISBN(), bog);
// hent en bog frem, via ISBN nummer Bog hentetBog = (Bog)arkiv.get("1243-43-44");
// udskriv bogens data til Sys.Out - Det kunne også være til en eller // anden GUI System.out.println(" TITEL : " + hentetBog.getTitel()); System.out.println(" FORFATTER : " + hentetBog.getForfatter()); System.out.println(" ISBN : " + hentetBog.getISBN()); } }
FIL : Bog.java
class Bog { private String titel; private String forfatter; private String isbn;
Det betyder reelt kun noget når det er noget der exposes til andre klasser.
Om man skal rette en new eller man skal lave en søg og erstat i en fil er ikke den store forskel.
Problemer er hvis man skal ud og rette i 500 filer fordi man ændrer i et interface (interface brugt i bred forstand ikke nødvedendigvis i Java language betydning).
Hvis vores key er et navn, kan man så godt gemme flere objekter under samme key?
Hvis vi f.eks. har en telefonbog. Hvis personen hedder anders og hans navn er key. Kan man så godt gemme f.eks. mobil, arbejde og hjemme nummer som 3 forskellige objekter under samme key, eller er der en anden måde det skal gøre på?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.