ホームページ >Java >&#&チュートリアル >ジャワだった
var は JDK 10 で導入された構造で、データ型が指定されていない変数を作成するために使用されますが、コンパイラーは型変数データの推論を任せられます。 。これは、型推論として知られるものです。
var は Java の キーワード や キーワード ではなく、後で導入された結果としての言語の 予約名 です。および 何らかの変数、クラス、メソッドなどの名前として使用されている可能性があります。導入前のコード内。
型推論は、変数をそのデータ型で宣言する代わりに、コンパイラがそれに割り当てられた値に従って変数のデータ型を決定できるプロセスです。これは、以下に示すようにリストを作成し、ダイヤモンド演算子内のデータ型を省略することで確認できます。
// 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>();
var を使用して変数を宣言するには、次のように実行します。
var nombreDeLaVariable = valor;
var n = "John";
この場合、変数 n には String 型の値が割り当てられており、データ型を宣言する必要は省略されているため、コンパイラーは変数 n が String 型であると推測します。つまり、次のことを行う必要はありません。
String n = "John";
変数の値が 10 に変更されると、コンパイラーは変数 n が int 型であると推論します。
var n = 10;
同様に、変数の値が 10.0 に変更されると、コンパイラは変数 n が double 型であると推論します。
var n = 10.0;
変数の値が Random のインスタンスに変更された場合でも、コンパイラーは変数 n が Random 型であると推論します。
// 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>();
var nombreDeLaVariable = valor;
var n = "John";
String n = "John";
var n = 10;
var n = 10.0;
var n = new Random();
public class Person { private var name; // Error }
残りの状況では、var はクラスの属性やメソッドのパラメーターなどのレベルではなく、コード内でローカルに使用する必要があることを考慮して、通常の方法で使用できます。例:
public class Person { private String name; }
public void sayHello(var name) { // Error System.out.println("Hello " + name); }
考慮すべき点は、var を使用すると、場合によってはコードの可読性が低下する可能性があるということです。Java は変数に事前にわかっているデータ型が割り当てられる言語であり、var を使用するとその情報が失われる可能性があるため、var を使用する必要があります。データ型を明確に推測でき、コードの可読性が失われない状況で使用できます。
var y = null; // Error
型推論を Java が厳密に型指定された言語であることと混同しないことが重要です。 var を使用しても変数は動的型変数にはなりませんが、コンパイラはコンパイル時に変数のデータ型を推測します。したがって、int 型の変数を宣言して、それに String 型の値を割り当てることはできません。
var x; // Error x = 10;
以上がジャワだったの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。