Sto lavorando su una classe di matrice sparsa che deve utilizzare un array di LinkedList
per memorizzare i valori di una matrice. Ogni elemento della matrice (cioè ciascuno LinkedList
) rappresenta una riga della matrice. Inoltre, ogni elemento nella LinkedList
matrice rappresenta una colonna e il valore memorizzato.
Nella mia classe, ho una dichiarazione dell'array come:
private LinkedList<IntegerNode>[] myMatrix;
E, nel mio costruttore per il SparseMatrix
, cerco di definire:
myMatrix = new LinkedList<IntegerNode>[numRows];
L'errore che finisco per ottenere è
Impossibile creare un array generico di
LinkedList<IntegerNode>
.
Quindi, ho due problemi con questo:
- Cosa sto facendo di sbagliato, e
- Perché il tipo è accettabile nella dichiarazione per l'array se non può essere creato?
IntegerNode
è una classe che ho creato. E tutti i miei file di classe sono impacchettati insieme.
class IntegerNodeList extends List<IntegerNode> {}