vous avez une idée sur mon pb car c'est trés interessant pour moi
vous avez une idée sur mon pb car c'est trés interessant pour moi
Il est ou le cast la dedans ?
ca c'est un cast :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 String secondElement = source.get(j).toString();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 String secondElement = (String)source.get(j);
bonsoir
je suis entrain de suivre sur quelle ligne mon pg s'arrete
alors j'ai remarqué sur cette partie
Z une liste
lla liste Z{222222222222222222221111111111222222222222222222221111111112, 222222222222222222221111111111222222222222222222221111111113, 222222222222222222221111111111222222222222222222221111111114, 222222222222222222221111111112222222222222222222221111111113, 222222222222222222221111111112222222222222222222221111111114, 222222222222222222221111111113222222222222222222221111111114]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 System.out.println("la liste Z"+Z); for (int dd =0;dd <Z.size();dd++){ String Q1 =(String) Z.get(dd); System.out.println("la liste E"+Q1); }
un message apparait (java.lang.ClassCastException)
C'est donc que ta liste ne contient pas que des String. Note que le code precedent contournait le probleme en appelant la methode toString() qui existe dans tous les objets. Mais meme ainsi je ne vois pas moi non-plus trop quel est le rapport avec ton probleme initial...
j'ai pensé que le probleme vient de la méthode comparaison mais aprés la modification d'ajouter cast , j'ai remarqué que non mais le progremme bloque sur cette partie
la liste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 System.out.println("la liste Z"+Z); for (int dd =0;dd <Z.size();dd++){ String Q1 =(String) Z.get(dd); System.out.println("la liste E"+Q1); }
Z[222222222222222222221111111111222222222222222222221111111112, 222222222222222222221111111111222222222222222222221111111113, 222222222222222222221111111111222222222222222222221111111114, 222222222222222222221111111112222222222222222222221111111113, 222222222222222222221111111112222222222222222222221111111114, 222222222222222222221111111113222222222222222222221111111114]
salut
je n'ai pas encore trouvé la solution
salut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 for (int i = 0; i < z.size (); ++i) { Object obj = z.get (i); if (obj instanceof String) { String str = (String)obj; // j'ai ajouté System.out.println pour afficher les valeurs de la liste Z mais ça marche pas ) System.out.println("la valeur"+str); }}
mais rein n'affiché
pourquoi
Le problème ne se situe pas là mais au moment ou tu ajoutes tes éléments dans ton ArrayList: tu n'ajoutes pas uniquement que des String, et les éléments qui ne sont pas des String ne peuvent être directement casté en String.
Donc c'est au moment où tu ajoutes des éléments dans tno ArrayList que tu dois les transformer en chaine (en appelant la méthode toString de l'objet à entrer dans l'ArrayList ou en faisant un Strin.valueOf(...) pour les types primitifs.)
++
merci mai je n'ai pas compris tout
tu peux me montrer comment je dois faire
Oups j'avais sauté une étape...
Si rien n'est affiché celà veut dire au choix:
Soit que ton ArrayList est vide,
Soit qu'aucun des objets qu'el contient est de Type String.
Tu pourrais vérifier la taille de ton ArrayList et son contenu en exécutant ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 System.out.println("taille de la liste: "+z.size()); for(int i=0; i<z.size(); i++) { System.out.println("Classe de l'objet à la position "+i+": "+o.getClass().getName()); }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager