Bei der normalen Initialisierung der Array-Liste Wir haben den generischen Typ wie folgt definiert,
%Vor%Aber im Falle von ArrayList of ArrayLists, wie können wir seinen generischen Typ definieren?
Der Code für die Array-Liste der Array-Listen lautet wie folgt:
%Vor%Teilen Sie einfach die Syntax, wenn jemand eine Idee dazu hat ..!
Sie können das einfach tun
%Vor%Wenn Sie ein Array von Listen benötigen, können Sie dies tun
%Vor%und ignorieren oder unterdrücken Sie die Warnung.
Sie haben Recht: Das sieht wahnsinnig aus. (Möge es ein Bug ...) Anstatt
zu verwenden %Vor%Verwenden:
%Vor%funktioniert für die Deklaration, auch wenn Sie kein generisches Generikum beschreiben!
Sie sprechen von einem Array von Listen (ArrayLists, um genauer zu sein). Java erlaubt keine generische Array-Generierung (außer bei Verwendung von Platzhaltern, siehe nächsten Abschnitt). Sie sollten also entweder Generika für das Array vergessen oder eine Liste anstelle eines Arrays verwenden (viele dafür vorgeschlagene Lösungen).
Zitat aus IBM Artikel :
Eine weitere Folge der Tatsache, dass Arrays kovariant sind, Generika aber nicht, ist, dass Sie ein Array eines generischen Typs nicht instantiieren können (new List [3] ist illegal), es sei denn, das Argument type ist ein unbeschränkter Platzhalter (new List & lt;? & gt; [3] ist legal).