Jump to content
Sign in to follow this  
Maradona101

ArrayList

Recommended Posts

Maradona101

Boas, eu queria guardar um objecto de uma classe numa ArrayList e depois aceder a esses objectos, mas não consigo, os atributos não aparecem, se mando por exemplo Artigo = ListaArtigo, não dá porque ListaArtigo devolve sempre um Obejct...

Há forma de resolver isto?

Cumps.

Share this post


Link to post
Share on other sites
Maradona101


class ClassArtigo
    {
        private int codigo;
        private string nome;
        private string descricao;
        private int preco;
        private int quantidade;
        public ArrayList ListaArtigo = new ArrayList();

        public ClassArtigo(int cod, string n, string desc, int pre, int quant)
        {
            codigo = cod;
            nome = n;
            descricao = desc;
            preco = pre;
            quantidade = quant;
        }

        public int Obtercodigo
        {
            get { return codigo; }
            set { codigo = value; }
        }

        public string Obternome
        {
            get { return nome; }
            set { nome = value; }
        }

        public string Obterdescricao
        {
            get { return descricao; }
            set { descricao = value; }
        }

        public int Obterpreco
        {
            get { return preco; }
            set { preco = value; }
        }

        public int Obterquantidade
        {
            get { return quantidade; }
            set { quantidade = value; }
        }

************************************************************************************
public static ArrayList ListaArtigo = new ArrayList();
public static ClassArtigo ClassA = new ClassArtigo(...,...,.,,.,,)
listaArtigo.Add(ClassA);

Tenho o código acima e queria fazer o seguinte, por exemplo.

int codigo = ListaArtigo[0].Obtercodigo;

A propriedade obtercodigo nem é reconhecida. Quero saber como trabalahr com o objecto que guardei no ArrayList.

A propriedade obtercodigo

Share this post


Link to post
Share on other sites
CarlosRodrigues

Boas.

A classe ArrayList é uma classe genérica, e como tal tens de lhe dizer que tipo de dados ela vai conter. Senão tens apenas objectos do tipo "object" e tens de fazer cast explicito.

public static ArrayList<ClassArtigo> ListaArtigo = new ArrayList<ClassArtigo>();

Share this post


Link to post
Share on other sites
Maradona101

Carlos, o código que me indicaste dá o seguinte erro.

Error 1 The non-generic type 'System.Collections.ArrayList' cannot be used with type arguments

Share this post


Link to post
Share on other sites
Maradona101

Dá o seuginte erro  :P

Error 1 The type or namespace name 'List' could not be found (are you missing a using directive or an assembly

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.