En raison de type erasure, la machine virtuelle Java ne sait pas à l'exécution que vous avez un Vector
de String
. Le mieux qu'il peut faire est de créer un vecteur «brut». Il ne peut pas garantir pour vous que tous les Vector
contiennent réellement String
s. C'est pourquoi vous recevez un avertissement de votre IDE.
Une façon de contourner ce problème, c'est de le lancer, comme le suggère jgubby. Une autre consiste à mettre un List
dans votre Vector
s, au lieu d'un tableau.
Mais, plus important encore, pourquoi le tableau ne peut avoir que 3 éléments? Ne serait-il pas préférable de créer une classe avec trois champs à mettre dans votre Vector
? Avec trois éléments, ce n'est pas trop de travail, et vous obtenez le bonus supplémentaire que vous pouvez donner à chacun des trois éléments un nom utile, ce qui devrait rendre votre code beaucoup plus clair.
En outre, depuis Java 6, il existe un certain nombre de nouvelles List
synchronisées utiles mises en œuvre, ce qui pourrait effectuer mieux que Vector
, comme CopyOnWriteArrayList
, ou envelopper une List
régulière dans un Collections.synchronizedList
.
Qu'est-ce qu'un vecteur de chaîne? – Mnementh
Le vecteur n'est-il pas obsolète? – Tom
P.S. Utilisez plutôt ArrayList !!! – jjnguy