Maison > Java > javaDidacticiel > Comment décoder l'encodage de type de classe \'[Ljava.lang.Object;\' de Java ?

Comment décoder l'encodage de type de classe \'[Ljava.lang.Object;\' de Java ?

Patricia Arquette
Libérer: 2024-11-19 17:42:03
original
983 Les gens l'ont consulté

How Do I Decode Java's

Décodage des informations sur le type de classe en Java

Souvent, nous rencontrons des chaînes comme "[Ljava.lang.Object;" lorsque vous travaillez avec des types de classe en Java. Comprendre comment décoder cet encodage est crucial pour identifier le type réel d'un objet.

Cet encodage suit un schéma de dénomination spécifique documenté dans Class.getName(). Lorsqu'un objet classe représente un type tableau, son nom est constitué du nom de son type d'élément précédé de crochets "[". Par exemple, "[Ljava.lang.Object;" représente Object[], qui est un tableau d'objets.

Le tableau suivant résume l'encodage des types d'éléments courants :

Element Type Encoding
boolean Z
byte B
char C
double D
float F
int I
long J
short S
Class or interface Lclassname;

Les tableaux ne remplacent pas la méthode toString() héritée d'Object , qui renvoie une chaîne au format :

getClass().getName() + '@' + Integer.toHexString(hashCode())
Copier après la connexion

C'est pourquoi toString() des tableaux renvoie une chaîne dans le format spécifique que nous rencontrons, y compris les crochets du tableau et l'encodage du nom de classe.

Bien qu'il soit déconseillé de s'appuyer sur toString() pour décoder les types de tableaux, Java propose des méthodes alternatives pour obtenir des informations sur les types. L'appel de getClass() sur un objet renvoie un objet Class qui peut être utilisé à des fins de réflexion. De plus, java.util.Arrays propose des surcharges de toString() pour les tableaux primitifs et Object[], ce qui facilite l'obtention d'une représentation lisible par l'homme du contenu du tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal