Ein Mechanismus zum Durchführen einer ** Typinferenz ** von ** lokalen Variablen **, der seit Java SE 10 aufgetreten ist. Leiten Sie den Datentyp aus dem Typ auf der rechten Seite ab. Die Typinferenz durch var erfolgt zur Kompilierungszeit.
** * [Was ist eine lokale Variable] ** Eine in ** in einer Methode ** deklarierte Variable (als formales Argument oder Argument in einer Methode verwendet)
** ・ Beispiel für eine Typinferenz durch var **
var i = 10; //Schließen Sie aus dem Wert auf der rechten Seite, dass i vom Typ int ist
** Nur lokale Variablen können vom Typ var abgeleitet werden! !! !! !! ** ** **
-Für andere Variablen als lokale Variablen (Instanzvariable, statische Variable, ** Methodenrückgabetyp **) -Wenn es nicht initialisiert wird, wenn die Variable deklariert wird (dh wenn nur "var i;" und die Variable erstellt werden) ・ Bei Initialisierung mit null -Für Variablen, die die Array-Initialisierung zuweisen
var leitet den Datentyp vom Typ auf der rechten Seite ab. Der zum Erstellen des Arrays verwendete Initialisierer ({}) leitet dann auch den Typ des Arrays vom Typ des zuzuweisenden Werts ab. Da sie sich gegenseitig ableiten, wird der Typ nicht bestimmt und es tritt ein Kompilierungsfehler auf.
** - Beispiel für eine Array-Initialisierung, die einen Kompilierungsfehler verursacht **
var array = {1,2,3};
Wenn Sie jedoch den Typ beim Erstellen des Werts des Arrays auf der rechten Seite deklarieren, können Sie das Array mit var initialisieren.
** Beispiel für die Array-Initialisierung mit var **
var array = new int []{1,2,3}; //Sie können ein Array vom Typ int erstellen
Wie bei Arrays können Sie auch bei var eine ArrayList erstellen.
** - Initialisierung von ArrayList mit var **
var list = new ArrayList<>();
Der ArrayList ** Diamantoperator ** gibt ** Objekttyp ** zurück, wenn kein referenzierbarer Typ vorhanden ist. Daher ist der obige Code der gleiche wie der folgende Code.
var list = new ArrayList<Object>();
Ein Objekttyp ArrayList wird als Liste erstellt.
Recommended Posts