[java]Probleem met een Map

Pagina: 1
Acties:

  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Hallo,

Ik zit al de halve dag met het volgende probleem.

Java:
1
2
3
4
5
6
7
8
9
10
System.out.println("Groepen:"+getArtikelGroepen().entrySet().size());
int ii=0;
while (i.hasNext()){
    Map.Entry me = (Map.Entry)i.next();
    map.put(me.getValue(), 
        String.valueOf(countVoorraadArtikel(me.getKey().toString(),vrrd)));
    System.out.println(ii);
    ii++;
}
System.out.println("map:"+map.size());      


Uit de Map van getArtikelGroepen() worden alle entrys gekopieerd naar een andere map. In de eerste println geeft hij aan dat de set 31 elementen groot is wat ook klopt.

Nou draait het while loopje en telt ook netjes van 0 tot 30, en als ik de entry's print zie ik ze ook alle 31 en lijkt me dat ze dan ook allemaal in de nieuwe map worden geplaatst. Maar dat doet hij dus niet, bij de 2e println zegt hij namelijk dat de map maar 30 elementen bevat en als ik hem print mis ik ook inderdaad een entry.

Ik snap daar dus helemaal niets meer van, hij print ze duidelijk wel allemaal in de while loop en add ze dus ook in die nieuwe map. Iemand een idee wat ik fout doe?

[ Voor 4% gewijzigd door eppie op 06-01-2005 13:24 . Reden: layout ]


  • BHR
  • Registratie: Februari 2002
  • Laatst online: 12:20

BHR

Bevat je orginele Map misschien twee elementen die dezelfde waarde hebben (dit in tegenstelling tot dezelfde key)?

Bevat je orginele Map een waarde NULL?

No amount of key presses will shut off the Random Bug Generator


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 17-05 11:04

Janoz

Moderator Devschuur®

!litemod

In een map kunnen rustig meerdere malen dezelfde waarde worden ingevoegd, echter moet de key uniek zijn. Waneer je iets put met een key die al bestaat, dan wordt dit element overschreven. Druk naast het begin en het eind ook eens in elke itteratie de key en de value van het zojuist toegevoegde element af en kijk welk element aan het eind mist.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • BHR
  • Registratie: Februari 2002
  • Laatst online: 12:20

BHR

Janoz schreef op donderdag 06 januari 2005 @ 13:57:
In een map kunnen rustig meerdere malen dezelfde waarde worden ingevoegd, echter moet de key uniek zijn.
Dat bedoel ik ook.. De TS gebruikt namelijk in zijn tweede map de waarde van de eerste map als key.

No amount of key presses will shut off the Random Bug Generator


  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Bedankt voor de snelle reacties, maar het was inderdaad een dubbele key. Door een type foutje :X