Probleme Classe Vector

sorento02 Messages postés 3 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,

voila j'ai un petit probleme j'espere que vous allez pouvoir m'aider

j'ai une classe A qui maniple un Vector

ji'instancie ma classe en question dans une autre classe B et je veux manipuler mon Vector à partir de la classe B

je veux plus precisement acceder au 1er element de mon vector (appartenant à la classe A ) mais à partir de la classe B

Merci d'avance

2 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Depuis la version Java 1.2 il est recommandé d'utiliser ArrayList à la place de Vector, qui ne devrait être utilisé que dans le contexte très particulier d'application thread-safe.

    Pour ton problème, si tu as juste besoin du premier élément, une petite méthode suffit.

    public class A<E>
    {
        private final ArrayList<E> vector = new ArrayList<E>();
        
        public E getFirst()
        {
            return vector.get(0);
        }
    }
    
    public class B<E>
    {
        A<E> a = new A<E>();
        
        E first = a.getFirst();
    }
    1
  2. ngounou25 Messages postés 110 Statut Membre 4
     
    Salut. Ceci est un code un peu abstrait ;-) . Tu devras juste remplacer "E" par le type d'objet (Integer, Double, JTextField, JPanel, ...) que ton Vector va stocker.

    Class A {
        // le vector de A
        private Vector<E> vec = new Vector<E>();
    
        ....
    
        public Vector<E> getVec() {
            return this.vec;
        }
    
        public void setVec(Vector<E> vec) {
            this.vec = vec;
        }
    }
    
    
    Class B {
        private A monA;
    
        ....
    
        public mafonction() {
    
            // Récupération d'une référence du Vector de A dans la classe B
            Vector<E> vec = getMonA().getVec();
    
            ...
        }
    
        ....
    
        public A getMonA() {
            return this.monA;
        }
    
        public void setMonA(A monA) {
            this.monA = monA;
        }
    }
    

    0