Se uso un HashSet
con una capacità iniziale di 10 e un fattore di carico di 0,5 poi ogni 5 elementi aggiunti saranno aumentate la HashSet
o prima del HashSet
è aumentata di 10 elementi e dopo a 15 a 20 atc. la capacità sarà aumentata?HashSet
HashSet
risposta
È il secondo caso. Il loadFactor di HashSet e hashMap è un fattore relativo.
Il fattore di carico è una misura di quanto è possibile ottenere l'HashSet pieno prima che la sua capacità venga aumentata automaticamente. Quando il numero di voci nella tabella hash supera il prodotto del fattore di carico e la capacità corrente, la tabella hash viene rehashed (ovvero, le strutture di dati interne vengono ricostruite) in modo che la tabella hash abbia circa il doppio del numero di bucket.
capacità iniziale predefinita del HashMap serve è 16 e fattore di carico è 0.75f (cioè il 75% delle dimensioni della carta). Il fattore di carico rappresenta a quale livello la capacità di HashMap deve essere raddoppiata.
Ad esempio il prodotto della capacità e fattore di carico come 16 * 0,75 = 12. Ciò rappresenta che dopo aver memorizzato la chiave 12 - coppia di valori nella HashMap, la sua capacità diventa 32.
- 1. HashSet vs. IQueryable
- 2. HashSet contiene voci duplicate
- 3. Prestazioni Java HashSet
- 4. Java: HashSet vs. HashMap
- 5. HashSet consente di duplicare
- 6. HashSet che conserva l'ordine
- 7. HashSet as DataSource
- 8. HashSet Collisioni in Java
- 9. Collectors.toSet() e HashSet
- 10. HashSet contiene il metodo()
- 11. Definire: Che cos'è un HashSet?
- 12. Ordine di iterazione di HashSet
- 13. Copia superficiale di un hashset
- 14. Hashset equivalente in SQL Server
- 15. C'è un HashSet in Delphi?
- 16. Java HashSet equiv in C++
- 17. miglior modo di cercare HashSet
- 18. Impossibile convertire HashSet a IReadOnlyCollection
- 19. Ottieni elementi casuali da hashset?
- 20. Ordina un Hashset .Net 3.5
- 21. Modifica dei valori in HashSet
- 22. Can .NET 4 ISet <> HashSet <> sostituire NHibernate Iesi.Collections ISet, HashSet?
- 23. Efficienza memoria di cancellazione di un hashset rispetto alla creazione di un nuovo hashset
- 24. rimuovere elementi da un HashSet mentre Iterare
- 25. Quanta memoria Java HashSet dovrebbe richiedere
- 26. Ottimizzare IEnumerable a HashSet conversione in LINQ
- 27. Impossibile analizzare HashSet in stringa JSONObject
- 28. Perché HashMap è più veloce di HashSet?
- 29. HashSet Java con criteri di uguaglianza personalizzati?
- 30. Equivalente HashSet di Java in PHP
nice !!! Stavo cercando questa spiegazione per un po '. Quindi il default è 2/3, il che significa che con la dimensione iniziale di 16 quando compilo 12, aumenterà lo spazio. – ha9u63ar
Per Java 7 e 8, il fattore di caricamento predefinito per HashSet è 0,75. – Kent