Heim  >  Artikel  >  Java  >  war ein Java

war ein Java

Linda Hamilton
Linda HamiltonOriginal
2024-10-24 06:29:30374Durchsuche

var en Java

var ist eine Konstruktion, die in JDK 10 eingeführt wurde. Sie wird zum Erstellen von Variablen verwendet, bei denen der Datentyp nicht angegeben ist, sondern der Compiler die Ableitung der Typvariablendaten überlässt . Dies wird als Typinferenz bezeichnet.

var ist kein Schlüsselwort oder Schlüsselwort von Java, sondern aufgrund seiner späteren Einführung ein reservierter Name der Sprache und es besteht die Möglichkeit, dass es als Name einer Variablen, Klasse, Methode usw. verwendet wurde. im Code vor seiner Einführung.

Die Typinferenz ist der Prozess, bei dem der Compiler, anstatt eine Variable mit ihrem Datentyp zu deklarieren, den Datentyp der Variablen anhand des ihr zugewiesenen Werts bestimmen darf ist etwas, das man sehen kann, indem man eine Liste erstellt und den Datentyp im Diamantoperator weglässt, wie unten gezeigt:

// Omite el tipo de dato dentro del operador diamante
List<Integer> list = new ArrayList<>();

// Usa el tipo de dato dentro del operador diamante
List<Integer> list = new ArrayList<Integer>();

Wie verwendet man var in Java?

Um eine Variable mit var zu deklarieren, gehen Sie wie folgt vor:

var nombreDeLaVariable = valor;
var n = "John";

In diesem Fall schließt der Compiler daraus, dass die Variable n vom Typ String ist, da ihr ein Wert vom Typ String zugewiesen ist und die Deklaration des Datentyps entfällt, d. h. Folgendes muss nicht getan werden:

String n = "John";

Wenn der Wert der Variablen auf 10 geändert wird, schließt der Compiler nun, dass Variable n vom Typ int:
ist

var n = 10;

Wenn der Wert der Variablen auf 10,0 geändert wird, schließt der Compiler nun ebenfalls, dass die Variable n vom Typ double ist:

var n = 10.0;

Selbst wenn der Wert der Variablen in eine Instanz von Random geändert wird, schließt der Compiler jetzt, dass Variable n vom Typ Random ist:

// Omite el tipo de dato dentro del operador diamante
List<Integer> list = new ArrayList<>();

// Usa el tipo de dato dentro del operador diamante
List<Integer> list = new ArrayList<Integer>();

Einschränkungen von var

  • Wenn Sie Attribute innerhalb einer Klasse deklarieren, können Sie sie nicht mit var deklarieren, da der Compiler den Datentyp eines Attributs nicht ableiten kann, sodass Sie den Datentyp explizit deklarieren müssen.
var nombreDeLaVariable = valor;
var n = "John";
  • var kann nicht zum Deklarieren von Parametern einer Methode oder Funktion verwendet werden, da der Compiler den Datentyp eines Parameters nicht ableiten kann und der Datentyp daher explizit deklariert werden muss.
String n = "John";
  • Eine weitere Einschränkung besteht darin, dass Sie var nicht verwenden können, wenn Sie eine Variable mit dem Wert Null deklarieren, da Null zumindest in Java kein gültiger Datentyp ist und die Typinferenz in diesem Fall nicht funktioniert.
var n = 10;
  • Wir können var auch nicht nur dazu verwenden, eine Variable zu deklarieren, ohne sie zu initialisieren. Es ist notwendig, der Variablen beim Deklarieren einen Wert zuzuweisen.
var n = 10.0;
  • Wenn mehrere Variablen desselben Typs in einer einzigen Zeile deklariert werden (zusammengesetzte Deklarationen), kann var nicht verwendet werden. Andernfalls muss eine Variable mit dem expliziten Datentyp verwendet werden.
var n = new Random();
  • var kann nicht zum Deklarieren von Lambdas, Methodenreferenzen oder Ähnlichem verwendet werden, zum Beispiel:
public class Person {
    private var name; // Error
}

In den übrigen Situationen kann var auf normale Weise verwendet werden, wobei zu berücksichtigen ist, dass es lokal im Code verwendet werden muss und nicht auf der Ebene von Attributen einer Klasse, Parametern einer Methode usw. Zum Beispiel:

public class Person {
    private String name;
}
public void sayHello(var name) { // Error
    System.out.println("Hello " + name);
}

Zu bedenken ist, dass die Verwendung von var in einigen Fällen die Lesbarkeit des Codes beeinträchtigen kann, da Java eine Sprache ist, in der Variablen Datentypen zugewiesen werden, die im Voraus bekannt sind, und wenn Sie var verwenden, können Sie diese Informationen verlieren, sodass var kann in Situationen verwendet werden, in denen der Datentyp klar abgeleitet werden kann und die Lesbarkeit im Code nicht verloren geht.

var y = null; // Error

Es ist wichtig, Typinferenz nicht damit zu verwechseln, dass Java eine stark typisierte Sprache ist. Durch die Verwendung von var wird die Variable nicht zu einer Variablen vom dynamischen Typ, sondern der Compiler leitet zur Kompilierungszeit den Datentyp der Variablen ab. Sie können also keine Variable vom Typ int deklarieren und ihr dann einen Wert vom Typ String zuweisen.

var x; // Error
x = 10;

Das obige ist der detaillierte Inhalt vonwar ein Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn