Problème de cast à la compil avec les generics

PijanaKrava Messages postés 26 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 23 décembre 2004 - 2 oct. 2004 à 14:45
PijanaKrava Messages postés 26 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 23 décembre 2004 - 2 oct. 2004 à 14:55
bonjour, bonjour !

voilà mon chti problème de compilation avec nos chères generics tant attendus qui font déjà chier (je précise que j'ai la version finale de la 1.5 !) :
beuah ( Object obj)
{
       ArrayList<String> arr;
        ......
       arr = (ArrayList<String>) obj;
}


le compilo ne reconnait pas le cast (considère que c'est toujours un Object). Si j'enlève le <String>, le compilo prend en compte ArrayList mais c'est toujours une erreur puisqu'il veut un ArrayList<String>. Il semble que les generics dans les cast ça passe pas. Ce serait un bug ? Faut pas faire comme ça ?
Si quelqu'un a une solution je suis preneur :big)

1 réponse

PijanaKrava Messages postés 26 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 23 décembre 2004
2 oct. 2004 à 14:55
ah j'ai oublié un autre problème du genre :
ArrayList<ScoredString> hits = new ArrayList<ScoredString> ();
.....
Collections.sort( hits );

et le compilo me sort ça : unchecked method invocation: <T>sort(java.util.List<T>) in java.util.Collections is applied to (java.util.ArrayList<Dictionary.ScoredString>)
je précise que la classe ScoredString possède bel et bien une méthode compareTo mais ce n'est pas le sujet ici puisqu'il semble que ce soit l'appel à la méthode qui foire pour je ne sais quelle raison, mais faut dire que l'entête de la méthode sort avec les generics a une drôle de tête :S !
0
Rejoignez-nous