Java comparaison élément vecteur + int

Fermé
mousekey - 25 mars 2005 à 19:48
sandul Messages postés 3927 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 - 23 janv. 2009 à 11:29
Bonjour,
j'aimerai faire une comparaison d'un élément d'un vecteur en java avec un élément int....

voici un exemple de code...

if ( vecteur.elementAt(int_nombre_element_vecteur) <
int_valeur_depart )
A voir également:

9 réponses

Bonjour,
j'ai trouvé la réponse à la question, voici la réponse :

if ( Integer.parseInt( ( String )vecteur.get(int_nombre_element_vecteur) )< int_valeur_temps_depart )


merci
mousekey
1
sandul Messages postés 3927 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 723
23 janv. 2009 à 10:24
Salut,

1. Vector n'est pas dépassé. C'est un ArrayList avec des méthodes synchronisées (donc thread safe). A utiliser si le besoin d'une List thread safe se présente (exemple: Swing et les contrôleurs d'une JTable)

2. Dans les deux cas (Vector ou ArrayList), il faut rajouter des objets et non pas des entiers. Avec un cast auto que le compilateur fait pour nous dans les dernières versions du JDK, le a.add(i) est OK (il transforme int en Integer avant de faire l'ajout). Mais pas dans un JDK 1.4 où tu devras faire le cast explicitement:
List a = new ArrayList();
// ou bien List a = new Vector(); cela dépend des besoins
// List<Integer> a = new ArrayList<Integer>(); ne compilera pas avec un JDK 1.4
int i =3;
a.add(new Integer(i));


++
1
Utilisateur anonyme
25 mars 2005 à 19:52
Bonjour,

vector.elementAt(index) retourne un Object.
Si int_valeur_depart est un entier, ca ne marchera que si vous castez en int l'objet retourné par la méthode Vector.elementAt(int)

a+
0
Bonjour,
quand je viens pour caster mon objet en int... le compilateur me dit que je ne peux faire une convertion de type..

C:\java\jdk\bin\Scheduler.java:56: inconvertible types
found : java.lang.Object
required: int
if ( (int)vecteur.elementAt(int_nombre_element_vecteur) <

à la ligne suivante....

if ( (int)vecteur.elementAt(int_nombre_element_vecteur) <
int_valeur_temps_depart
)

vecteur est un vector et int_valeur_temps_depart
est un int...

merci
mousekey
0
papillon2000 Messages postés 106 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 12 janvier 2010 15
22 janv. 2009 à 15:24
bonjours, je veux ajouter dans un vecteur un element de type int, mais sa marche pas avec java.
je fais le code :
1. Vector v=new Vector();
2. int i=3;

3. v.add(i);

je recoie un message d'érreur au niveau de l'instruction 3 indique que la méthode add(int ) n'existe pas dans le packager java.util.vector

merci pour votre aide.
0
godzi44 Messages postés 41 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 17 février 2009 14
22 janv. 2009 à 16:27
papillon2000 il me semble que l'utilisation de vector en java est dépassé. il me semble donc préférable d'utiliser un arraylist.
et la ton instruction devrait ressembler a ceci:
arrayList<int> a = new arrayList();
int i =3;
a.add(i);
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
papillon2000 Messages postés 106 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 12 janvier 2010 15
22 janv. 2009 à 17:14
sa marche pas, je tien à vous informer que je travaille avec jbuilder ( jdk1.4)
0
godzi44 Messages postés 41 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 17 février 2009 14
23 janv. 2009 à 09:07
est-il possible de savoir qu'elle est l'erreur afficher?
0
papillon2000 Messages postés 106 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 12 janvier 2010 15
23 janv. 2009 à 10:18
il indique que la methode add (int) n'existe pas dans java.util.arrayList (de méme avec vector).
0
papillon2000 Messages postés 106 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 12 janvier 2010 15
23 janv. 2009 à 11:26
merci sandul t'as méthode marche bien, néamoin il ya d'autre problémes dans mon code.
la méthdode intValue() aussi ne marche pas pour les classe arraylist ou vector.
0
sandul Messages postés 3927 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 723
23 janv. 2009 à 11:29
Ca c'est autre chose... intValue() est une méthode de la classe Integer, tu ne pourras pas l'appliquer aux instances des classes collections (ArrayList ou Vector). Applique-là aux éléments de ta collection s'ils sont des Integer.

++
0
gfdsgd
-1