Javaは変数の型をどのように判別するのか。

Javaでは、変数のタイプを判別するためにinstanceofキーワードを使用することができます。

例えば:

Object obj = "Hello";

if (obj instanceof String) {
    System.out.println("obj 是String类型");
} else {
    System.out.println("obj 不是String类型");
}

このコードでは、最初に変数objを宣言し、その値を文字列”Hello”に設定しています。その後、instanceofキーワードを使用してobjがString型かどうかを判断し、String型であれば「objはString型です」と出力し、そうでなければ「objはString型ではありません」と出力します。

instanceofキーワード以外にも、変数の型を取得するためにgetClass()メソッドを使用することもできます。例えば:

Object obj = "Hello";
Class<? extends Object> objType = obj.getClass();
System.out.println("obj 的类型是:" + objType);

このコードでは、objのタイプをgetClass()メソッドを呼び出して取得し、objType変数に代入しています。次に、出力ステートメントを使用してobjの型を印刷します。

getClass() メソッドは、文字列ではなく Class オブジェクトを返すことに注意してください。変数の型名を印刷する必要がある場合は、getName() メソッドを呼び出すことができます。例:

Object obj = "Hello";
Class<? extends Object> objType = obj.getClass();
System.out.println("obj 的类型是:" + objType.getName());

このコードでは、getName()メソッドを使用してobjの型名を取得し、出力します。出力結果はobjの型は:java.lang.Stringです。

bannerAds