En fait je suis en train d'�crire une classe susceptible de contenir
soit un tableau de Dates, d' entiers, de doubles ou de String (cf. code
ci-dessous : attention il est horrible!). Vu les questions que je me
pose, je suis conscient que je m'y prend mal...

import java.util.ArrayList;
import java.util.Date;

public class ColonneIndicateur {
    public ColonneIndicateur(ETypeDonnees pTypeDonnees, String
pLibelle, String pUnite, Object[] donnees) {
        tableauDonnees = new ArrayList();
        setTypeDonnees(pTypeDonnees);
        setLibelle(pLibelle);
        setUnite(pUnite);
        for (int i=0; i<donnees.length; i++)
        {
            addDonnee(donnees[i]);
        }
    }


    public String getLibelle(){ return libelle; }

    public void setLibelle(String libelle){ this.libelle = libelle; }

    public String getUnite(){ return unite; }

    public void setUnite(String unite){ this.unite = unite; }

    public ETypeDonnees getTypeDonnees(){ return typeDonnees; }

    public void setTypeDonnees(ETypeDonnees typeDonnees){
this.typeDonnees = typeDonnees; }

    // A REVOIR!! Pas optimis� du tout!!
    public boolean addDonnee(Object donnee) {
        if (donnee instanceof Integer &&
typeDonnees.equals(ETypeDonnees.E_ENTIER))
        {
   return tableauDonnees.add(donnee);
        }
        else if (donnee instanceof Double &&
typeDonnees.equals(ETypeDonnees.E_DOUBLE))
        {
            return tableauDonnees.add(donnee);
        }
        else if (donnee instanceof Integer &&
typeDonnees.equals(ETypeDonnees.E_DATE))
        {
            return tableauDonnees.add(donnee);
        }
        else if (donnee instanceof String &&
typeDonnees.equals(ETypeDonnees.E_CHAINE))
        {
            return tableauDonnees.add(donnee);
        }

        return false;
    }

 public void affiche()
    {
        System.out.println("Libelle tableau donnees : " +
getLibelle());
        System.out.println("Unite tableau donnees : " + getUnite());
        System.out.println("contenu tableauDonnees : "+tableauDonnees);

    }

    public Object getDonnee(int index)
    {
        return tableauDonnees.get(index);
    }

    public Object[] getDonnees()
    {
        return tableauDonnees.toArray();
    }

    private String libelle;
    private String unite;
    private ArrayList tableauDonnees;
    private ETypeDonnees typeDonnees;


}


Remi Forax a �crit :

> HAREL Anthony wrote:
>
> >Bonjour,
> >
> >Une petite question de d�butant, mais bon...
> >Comment fait-on pour caster un tableau d'objets Object[] en
> >tableau d'entiers int[]?
> >Plus exactement j'ai dans une ArrayList un tableau d'Integer
> >(Integer[ ] ) si j'utilise la methode toArray() d'ArrayList, je
> >r�cup�re un tableau d'Object, je fais comment pour avoir un
> >tableau d'int (int[ ])?
> >
> Il n'y a pas de m�thode automatique, il faut le faire � la main.
>
> List list=...
> int len=list.size();
> int[] tab=new int[len];
> for(int i=0;i<len;i++)
>   tab[i]=((Integer)list.get(i)).intValue();
>
> Sinon, c'est assez rare d'avoir un tableau d'Integer qui traine !!!
> Es-tu sur que tu en a besoin ??
>
> >
> >Merci
> >
> >  Anthony HAREL
> >
> Remi

--
_______________________________

  Anthony HAREL


  mailto:[EMAIL PROTECTED]
_______________________________


Répondre à