Wie Java- Hashtable Kapazität anpassen . Java HashTable Klasse ist Teil der Standard-Bibliotheken für die Programmiersprache. Jedes HashTable zunächst eine vorgegebene Anzahl von Schlitzen . Wenn die Hash-Tabelle wird voller als eine vom Benutzer angegebene " Auslastung " Java wird automatisch Aufguss die Tabelle mit einer größeren Anzahl von Slots. Der Aufguss Bedienung ist relativ langsam. Sie können testen, ob Ihre Java-Anwendung wird rehashs auszulösen, um eine ausreichend große Anzahl von Zeitnischen auf Tisch -creation Zeit behalten , wodurch die Notwendigkeit für eine spätere Neuauflagen . Anleitung
1
Erstelle deinen HashTable mithilfe des Konstruktors, der eine anfängliche Kapazität , wie im folgenden Beispiel-Code angibt:
HashTable myTable = new HashTable (100);
< p> Ersetzen Sie " 100 " durch die Anzahl der Slots, die Sie möchten, dass Ihre Tabelle zum Zeitpunkt der Erstellung haben
2
Neues Iterator-Objekt zu überwachen, wenn - . wenn überhaupt - die HashTable wird wie in rehashed der folgende Beispielcode : .
Iterator rehashDetector = myTable.entrySet () Iterator ();
3
die Ausnahme automatisch durch das Java Runtime erzeugt werden, wenn die Tabelle mit eine bestehende Iterator wird wieder aufgewärmt , wie im folgenden Beispielcode:
catch ( ConcurrentModificationException e) {
System.out.println (" die Hash-Tabelle habe wieder aufgewärmt - verwenden eine größere Kapazität bei Zeitpunkt der Erstellung "); }
Wenn Sie die Warnmeldung sehen , ändern Sie den Code , um eine größere Kapazität zur HashTable Konstruktor übergeben
.