ホームページ  >  記事  >  Java  >  ジャワだった

ジャワだった

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-24 06:29:30374ブラウズ

var en 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>();

Java で var をどのように使用しますか?

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 の制限

  • クラス内で属性を宣言する場合、コンパイラーは属性のデータ型を推論できないため、var を使用して属性を宣言することはできません。そのため、データ型を明示的に宣言する必要があります。
var nombreDeLaVariable = valor;
var n = "John";
  • コンパイラーはパラメーターのデータ型を推論できないため、var を使用してメソッドまたは関数のパラメーターを宣言することはできません。そのため、データ型を明示的に宣言する必要があります。
String n = "John";
  • その他の制限としては、値が null の変数を宣言するときに var を使用できないという事実があります。これは、少なくとも Java では、null は有効なデータ型ではなく、この場合は型推論が機能しないためです。
var n = 10;
  • var を使用して変数を初期化せずに宣言することもできません。宣言時に変数に値を割り当てる必要があります。
var n = 10.0;
  • 同じ型の複数の変数が 1 行で宣言されている場合 (複合宣言)、var は使用できないため、明示的なデータ型の変数を使用する必要があります。
var n = new Random();
  • var を使用してラムダ、メソッド参照などを宣言することはできません。次に例を示します。
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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。