en hashtabell butiker ( nyckel , objekt ) par och söker efter nyckelns värde . Javas HashTable klass är en del av de vanliga biblioteken för att programmeringsspråk . Varje HashTable har initialt ett visst antal slots . Om hash tabellen blir fylligare än en specificerad - " kabinfaktor , " Java automatiskt uppkok bordet med ett större antal luckor . Den uppkok operationen är relativt långsam . Du kan testa om din Java-program kommer att utlösa rehashes för att reservera ett tillräckligt stort antal luckor vid bordet - skapande tid , vilket undanröjer behovet av efterföljande rehashes . Instruktioner
1
Skapa din HashTable med konstruktören som anger en initial kapacitet , som i följande exempelkod :
HashTable mytable = ny HashTable ( 100 ) ;
Ersätt " 100 " med antalet slots du vill att din tabell att ha när det skapas
2
Skapa en iterator objekt att övervaka när - . om någonsin - den HashTable blir rehashed som i följande exempelkod : .
iterator rehashDetector = myTable.entrySet ( ) iterator ( ) ;
3
Hantera undantag genereras automatiskt av Java Runtime när tabellen med en befintlig iterator blir rehashed , som i följande exempelkod :
catch ( ConcurrentModificationException e ) {
System.out.println ( " hash tabellen fick rehashed - använd en större kapacitet på skapande tid " ) ,
}
p Om du ser varningsmeddelandet , modifiera koden för att klara en större kapacitet till HashTable konstruktören Addera ditt .