[Débutant] Caster un Object en String[][]
Bonjour à tous!
Ma question est contenue dans le titre, j'utilise une méthode qui renvoie un Object, celui ci étant normalement un tableau de String à deux dimensions (donc un String[][]). J'ai essayé de caster à la volée mais je récupère une erreur java.lang.ClassCastException.
Voilà comment je m'y prends :
Code:
1 2
|
String[][] result = (String[][]) monService.invoke("WServices","getProductSheet", arguments); |
Si je remplace par :
Code:
1 2
|
Object result = monService.invoke("WServices","getProductSheet", arguments); |
J'obtiens alors bien un objet ressemblant à un String[][] puisqu'en faisant un affichage de cet Object à l'aide de la méthode toString() j'obtiens cet affichage :
Code:
1 2
|
[[24ZSB678, 100,00, Price], [34567FGH, 32 A, MaxCurrent], [5678900G, 220 V, MaxTension], [7FGHZ345, USB 2.0, Connectivity]] |
Quelqu'un voit il comment faire?
Merci d'avance, et bonne fin de journée à tous!
Re: [Débutant] Caster un Object en String[][]
Salut,
Citation:
Envoyé par ArseNic
J'obtiens alors bien un objet ressemblant à un String[][] puisqu'en faisant un affichage de cet Object à l'aide de la méthode toString() j'obtiens cet affichage :
Code:
1 2
|
[[24ZSB678, 100,00, Price], [34567FGH, 32 A, MaxCurrent], [5678900G, 220 V, MaxTension], [7FGHZ345, USB 2.0, Connectivity]] |
Ce n'est pas parceque cela ressemble a un tableau que c'en est un...
La méthode toString() d'un objet String[][] t'aurait affichée quelque chose dans le style :
Code:
[[Ljava.lang.String;@480457
Que t'affiche l'exception exactement (en général les ClassCastExceptions indiquent le vrai type de l'objet dans le message d'erreur).
Sinon tu peux toujours utilisé desClass().getName() et getClass().isArray() pour être sûr...
a++