Java typeof 演算子
    
    
            Mohammad Irfan
    2023年10月12日
    
    Java
    Java Operator
    
 
このチュートリアルでは、Java で変数または値のデータ型を取得する方法を紹介し、トピックを理解するためのサンプルコードをいくつか示します。
Java では、変数または値の型を取得するために、Object クラスの getClass() メソッドを使用できます。これを行う唯一の方法は、タイプをチェックするための typeof() メソッドを使用する JavaScript とは異なります。
Object クラスの getClass() メソッドを使用したため、プリミティブではなく、オブジェクトでのみ機能します。プリミティブのタイプを取得する場合は、最初にラッパークラスを使用してそれらを変換します。いくつかの例で理解しましょう。
Java で変数/値の型を取得する
この例では、getClass() を使用して変数の型をチェックしました。この変数は文字列型であるため、メソッドを直接呼び出すことができます。以下の例を参照してください。
getClass() メソッドは、この場合は java.lang.String などのパッケージ名を含む完全修飾クラス名を返すことに注意してください。
public class SimpleTesting {
  public static void main(String[] args) {
    String msg = "Hello";
    System.out.println(msg);
    System.out.println("Type is: " + msg.getClass());
  }
}
出力:
Hello
Type is: class java.lang.String
Java で任意の変数/値の型を取得する
上記の例では、文字列変数を使用し、同様にその型を取得しました。別のタイプの変数を使用することもでき、メソッドは目的の結果を返します。以下の例を参照してください。
この例では、文字列とは別に、整数と文字の 2つの変数を作成し、getClass()メソッドを使用しました。
package javaexample;
public class SimpleTesting {
  public static void main(String[] args) {
    String msg = "Hello";
    System.out.println(msg);
    System.out.println("Type is: " + msg.getClass());
    // Integer
    Integer val = 20;
    System.out.println(val);
    System.out.println("Type is: " + val.getClass());
    // Character
    Character ch = 'G';
    System.out.println(ch);
    System.out.println("Type is: " + ch.getClass());
  }
}
出力:
Hello
Type is: class java.lang.String
20
Type is: class java.lang.Integer
G
Type is: class java.lang.Character
getClass() メソッドは、パッケージ名を含む、クラスの完全修飾名を返します。タイプ名のみを取得する場合は、単一の文字列を返す getSimpleName() メソッドを使用できます。以下の例を参照してください。
package javaexample;
public class SimpleTesting {
  public static void main(String[] args) {
    String msg = "Hello";
    System.out.println(msg);
    System.out.println("Type is: " + msg.getClass().getSimpleName());
    // Integer
    Integer val = 20;
    System.out.println(val);
    System.out.println("Type is: " + val.getClass().getSimpleName());
    // Character
    Character ch = 'G';
    System.out.println(ch);
    System.out.println("Type is: " + ch.getClass().getSimpleName());
  }
}
出力:
Hello
Type is: String
20
Type is: Integer
G
Type is: Character
        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe