So I have this general purpose HashTable class I\'m developing, and I want to use it generically for any number of incoming types, and I want to also initialize the internal
Generics in Java doesn't allow creation of arrays with generic types. You can cast your array to a generic type, but this will generate an unchecked conversion warning:
public class HashTable<K, V>
{
private LinkedList<V>[] m_storage;
public HashTable(int initialSize)
{
m_storage = (LinkedList<V>[]) new LinkedList[initialSize];
}
}
Here is a good explanation, without getting into the technical details of why generic array creation isn't allowed.
Also, you can suppress the warning on a method by method basis using annotations:
@SuppressWarnings("unchecked")
public HashTable(int initialSize) {
...
}