Operador typeof en Java

Mohammad Irfan 12 octubre 2023
  1. Obtener el tipo de una variable / valor en Java
  2. Obtenga el tipo de cualquier variable / valor en Java
Operador typeof en Java

Este tutorial presenta cómo obtener el tipo de datos de una variable o valor en Java y enumera algunos códigos de ejemplo para comprender el tema.

En Java, para obtener el tipo de una variable o un valor, podemos usar el método getClass() de la clase Object. Esta es la única forma de hacer esto, a diferencia de JavaScript con el método typeof() para verificar el tipo.

Como usamos el método getClass() de la clase Object, funciona solo con objetos, no con primitivas. Si desea obtener el tipo de primitivas, primero conviértalas usando la clase contenedora. Entendamos con algunos ejemplos.

Obtener el tipo de una variable / valor en Java

En este ejemplo, usamos getClass() para verificar el tipo de una variable. Dado que esta variable es un tipo de cadena, podemos llamar directamente al método. Vea el ejemplo a continuación.

Observe que el método getClass() devuelve un nombre de clase completamente calificado, incluido un nombre de paquete como java.lang.String en nuestro caso.

public class SimpleTesting {
  public static void main(String[] args) {
    String msg = "Hello";
    System.out.println(msg);
    System.out.println("Type is: " + msg.getClass());
  }
}

Producción :

Hello
Type is: class java.lang.String

Obtenga el tipo de cualquier variable / valor en Java

En el ejemplo anterior, usamos una variable de cadena y obtuvimos su tipo de manera similar; también podemos usar otro tipo de variable y el método devuelve el resultado deseado. Vea el ejemplo a continuación.

En este ejemplo, creamos dos variables más, integer y character, además de string y usamos el método 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());
  }
}

Producción :

Hello
Type is: class java.lang.String
20
Type is: class java.lang.Integer
G
Type is: class java.lang.Character

El método getClass() devuelve un nombre completo calificado de la clase, incluido el nombre del paquete. Si desea obtener solo el nombre del tipo, puede usar el método getSimpleName() que devuelve una sola cadena. Vea el ejemplo a continuación.

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());
  }
}

Producción :

Hello
Type is: String
20
Type is: Integer
G
Type is: Character

Artículo relacionado - Java Operator