Ci-dessous ma syntaxe
List synchronizedpubliesdList = Collections.synchronizedList(publiesdList);
Je reçois une erreur de syntaxe de:
List is a raw type. References to generic type List<E> should be parameterized.
S'il vous plaît suggérer la solution.
Je crois que
La liste est un type brut. Les références au type générique List doivent être paramétrées
n'est pas une erreur, mais un avertissement.
Comprendre les génériques est une pierre angulaire si vous envisagez d'utiliser Java. Je vous suggère donc de consulter les pages de didacticiels de Java à ce sujet:
Tutoriels sur les génériques Java
Donc, si vous savez quel type d’objets est contenu dans publiesdList
, vous pouvez le faire:
List<YourType> synchronizedpubliesdList = Collections.synchronizedList(publiesdList);
S'il existe plusieurs types d'objets dans votre liste, vous pouvez utiliser un caractère générique:
List<?> synchronizedpubliesdList = Collections.synchronizedList(publiesdList);
Ou si vous voulez juste vous débarrasser de l'avertissement, vous pouvez le supprimer comme ceci:
@SuppressWarnings("rawtypes")
List synchronizedpubliesdList = Collections.synchronizedList(publiesdList);
ce dernier n'est toutefois pas recommandé.
Vous devez lui donner le type générique correct, par exemple.
List<String> publiesdList = ...
List<String> synchronizedpubliesdList = Collections.synchronizedList(publiesdList);
Vous pouvez définir "liste publique" de cette façon:
List<String> publiesdList = new List<String>();
L'avertissement disparaîtra.
J'ai eu les mêmes avertissements dans Eclipse et il suffit de cliquer sur le panneau d'avertissement pour pouvoir ajouter un argument de type au hachage, à la liste, au tableau ou à ce que vous avez .. .. Grande liste de discussion ici Qu'est-ce qu'un type brut et pourquoi ne devrions-nous pas l'utiliser?