Initial capacity and load factor | Reduce unnecessary memory usage

Throwing and catching exceptions

Throwing and catching an exception is relatively costly. Use exceptions in exceptional situations, but avoid using them in normal (frequently executed) processing.