Opérateur typeof en Java
- Obtenir le type d’une variable/valeur en Java
- Obtenez le type de n’importe quelle variable/valeur en Java
Ce didacticiel explique comment obtenir le type de données d’une variable ou d’une valeur en Java et répertorie quelques exemples de codes pour comprendre le sujet.
En Java, pour obtenir le type d’une variable ou d’une valeur, on peut utiliser la méthode getClass()
de la classe Object
. C’est la seule façon de le faire, contrairement à JavaScript avec la méthode typeof()
pour vérifier le type.
Puisque nous avons utilisé la méthode getClass()
de la classe Object, elle ne fonctionne qu’avec des objets, pas des primitives. Si vous souhaitez obtenir le type de primitives, convertissez-les d’abord à l’aide de la classe wrapper. Comprenons avec quelques exemples.
Obtenir le type d’une variable/valeur en Java
Dans cet exemple, nous avons utilisé getClass()
pour vérifier le type d’une variable. Étant donné que cette variable est de type chaîne, nous pouvons appeler directement la méthode. Voir l’exemple ci-dessous.
Notez que la méthode getClass()
renvoie un nom de classe complet, y compris un nom de package tel que java.lang.String
dans notre cas.
public class SimpleTesting {
public static void main(String[] args) {
String msg = "Hello";
System.out.println(msg);
System.out.println("Type is: " + msg.getClass());
}
}
Production:
Hello
Type is: class java.lang.String
Obtenez le type de n’importe quelle variable/valeur en Java
Dans l’exemple ci-dessus, nous avons utilisé une variable chaîne et obtenu son type de la même manière ; on peut aussi utiliser un autre type de variable, et la méthode renvoie le résultat souhaité. Voir l’exemple ci-dessous.
Dans cet exemple, nous avons créé deux autres variables, un entier et un caractère, en dehors de la chaîne et utilisé la méthode 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());
}
}
Production:
Hello
Type is: class java.lang.String
20
Type is: class java.lang.Integer
G
Type is: class java.lang.Character
La méthode getClass()
renvoie un nom complet qualifié de la classe, y compris le nom du package. Si vous souhaitez obtenir uniquement le nom du type, vous pouvez utiliser la méthode getSimpleName()
qui renvoie une seule chaîne. Voir l’exemple ci-dessous.
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());
}
}
Production:
Hello
Type is: String
20
Type is: Integer
G
Type is: Character