Come regolare Java Hashtable Capacità

September 2

Una tabella memorizza hash (chiave, oggetto) le coppie e le ricerche di valore della chiave. classe Hashtable Java fa parte delle librerie standard per questo linguaggio di programmazione. Ogni HashTable ha inizialmente un certo numero di slot. Se la tabella di hash ottiene più piena di un specificato dall'utente "fattore di carico", Java rimaneggiamento automaticamente la tabella con un numero maggiore di slot. L'operazione rimaneggiamento è relativamente lento. È possibile verificare se l'applicazione Java innescherà rimaneggiamenti al fine di riservare un numero sufficientemente ampio di bande orarie negli tempo tavolo-creazione, evitando così la necessità di rimaneggiamenti successivi.

istruzione

1 Crea il tuo HashTable utilizzando il costruttore che specifica una capacità iniziale, come nel seguente codice di esempio:

HashTable myTable = new Hashtable (100);

Sostituire "100" per il numero di slot si desidera che il tavolo abbia al momento della creazione.

2 Creare un oggetto iteratore per monitorare quando - se mai - HashTable viene rimaneggiato, come nel seguente codice di esempio:

. Iterator rehashDetector = myTable.entrySet () iterator ();

3 Gestire l'eccezione generata automaticamente dal runtime Java quando la tabella con un iteratore esistente viene rimaneggiato, come nel seguente codice di esempio:

catch (ConcurrentModificationException e) {

System.out.println ( "La tabella hash ottenuto rimaneggiato - utilizzare una capacità maggiore al momento della creazione");

}

Se viene visualizzato il messaggio di avviso, modificare il codice per passare una maggiore capacità al costruttore HashTable.