[JAVA] Anordnungsliste

Ich habe es für das persönliche Studium zusammengefasst

ArrayList

Einige Mengen werden als ** Sammlung ** bezeichnet, und ein Array ist eine davon. Um die Arbeit mit Sammlungen zu vereinfachen, verfügt Java über mehrere Schnittstellen mit den Namen ** Collection API ** und ** Collection Frames ** sowie eine Gruppe von Klassen, die aus Klassen bestehen. Viele dieser Schnittstellen und Klassen befinden sich im Paket java.util, und die Klasse ** java.util.ArrayList **, auch als ** dynamische Arrays ** bezeichnet, kann wie Arrays verwendet werden.

Funktionen der ArrayList-Klasse

① Jeder Objekttyp kann verwendet werden ② Erhöhen Sie die Anzahl der Elemente nach Bedarf automatisch ③ In der Reihenfolge der Hinzufügung anordnen ④ null kann auch als Wert hinzugefügt werden ⑤ Doppelte Werte können hinzugefügt werden ⑥ Nicht threadsicher

Die Merkmale von ① und ② decken die Probleme der Anordnung ab. ③ ist eine ** Listenstruktur **, in der die Werte in der Reihenfolge der Addition angeordnet sind, da die Werte durch Zahlen wie ein Array verwaltet werden. Es kann jedoch überall eingefügt werden Gibt an, ob ⑥ eine Funktion hat, um unbeabsichtigte Ergebnisse bei paralleler Verarbeitung zu verhindern

Generika

Da das Argument der add-Methode, die den Wert von ArrayList hinzufügt, und der Rückgabewert der get-Methode, die den Wert abruft, ** Objekttyp ** sind, kann alles behandelt werden. Sammlungen mit gemischten Werten können jedoch beim Downcasting Ausnahmen auslösen Daher gibt es eine Funktion namens ** Generics **, die die Typen einschränkt, die von der Auflistung verarbeitet werden können, indem der Typ angegeben wird.

Beispiel) Generika ArrayList<String> list=new ArrayList<>;

Der angegebene Typ ist ** Typparameter ** (String-Teil im Beispiel), und die Generika können präziser geschrieben werden ** Diamond-Operator <> ** (<> rechts im Beispiel) Es gibt eine Funktion namens Mit dieser Funktion bestimmt der Compiler, welche Typvariable die Variable deklariert, die den Verweis auf die Instanz enthält, und der gleiche Typ kann verwendet werden, um die Typvariable zum Zeitpunkt der Instanziierung zu bestimmen. Dies wird als ** Typinferenz ** bezeichnet.

Recommended Posts

Anordnungsliste
[Übung] ArrayList
[Übung] ArrayList
ArrayList-Praxis
ArrayList-Klasse
LinkedList und ArrayList
[Java] Was ist ArrayList?