Ce forum est en partie financé par l’affichage de publicités. Merci de désactiver votre bloqueur de publicités pour nous permettre de continuer à fournir ce service.

Question basique sur la classe Vector

Discussion dans 'Développement Mac' créé par Sken, 7 Juillet 2003.

  1. Sken

    Sken Nouveau membre

    Inscrit:
    8 Juin 2003
    Messages:
    24
    J'aime reçus:
    0
    Voilà, j'ai bien compris qu'un Vector stocke des objets. Je voudrais fair un tableau de nombres entiers. j'ai une boucle qui me donne par exemple les 20 premiers entiers, je voudrais mettre ces valeurs dans mon Vector:
    public Vector base = new Vector();

    public void generer(Object sender) {
    for (int i= 0; i<20; i++)

    {
    base.addElement (i);}
    Le complilateur refuse ce que je comprends.
    J'essaie de créer un objet String à partir de i : String valeur = i.toString() pour ensuite mettre base.addElement (valeur), il me dit que je ne peux pas déréférencer i.
    Alors comment je dois faire ?
    Avec un tableau (int[​IMG] base = new int[20]) y a pas de problèmes, mais je tiens au Vector parceque je veux pouvoir ensuite retirer certains nombres de mon vector.
     
  2. Sken

    Sken Nouveau membre

    Inscrit:
    8 Juin 2003
    Messages:
    24
    J'aime reçus:
    0
    C'est OK excusez-moi de vous avoir dérangé [​IMG]
    J'ai trouvé la solution avec la méthode Integer.toString ().
    A+
    [​IMG]
     
  3. molgow

    molgow Vétéran
    Club MacG

    Inscrit:
    4 Janvier 2002
    Messages:
    5 493
    J'aime reçus:
    612
    Plutôt que de convertir tes int en String pour les stocker dans le Vector, tu pourrais aussi convertir tes int en Integer ça serait pas plus simple ?

    Quelque chose dans ce genre.. :


    Vector v = new Vector();

    for (int i = 0; i < 20; i++) {
    v.add(new Integer(i));
    }
     
  4. Sken

    Sken Nouveau membre

    Inscrit:
    8 Juin 2003
    Messages:
    24
    J'aime reçus:
    0
    Mais oui, tu as raison, je n'y avais pas pensé. Et en plus ça me permet de faire des calculs sur mes valeurs ! Autre avantage, je présume que ça prend moins de place en mémoire, non ?
    Merci du tuyau
     
  5. molgow

    molgow Vétéran
    Club MacG

    Inscrit:
    4 Janvier 2002
    Messages:
    5 493
    J'aime reçus:
    612
    De rien. Pour la place mémoire je n'en sais rien...
    Si tu veux faire après des calculs, il te faudra malheureusement les reconvertir en int (avec la méthode intValue()). C'est un des aspects Java les plus ennuyeux et les plus mal foutu je trouve. C'est vraiment dommage qu'ils n'aient pas choisi l'option du "tout objet".. donc que même les int ou les float soit des objets et non des simples variables.. [​IMG]
     
Chargement...