Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 2.691 pregleda

Najnovija ↓

Pristup elementima ArrayListe 22.01.2009. u 17:08 · pre 216 meseci #1
Kako da pristupim svakom elementu liste arraylist na primer imam:
Code:
clsElemenat objElement=new clsElemenat();
ArrayList objListaObjekata=new ArrayList(); 


Kako sad da u c# pristupim svakom elementu liste ObjListaObjekata i da svaki njegov element stavim u objElement.
Pretpostavljam da to ide kroz for petlju to je u redu, ali kad pokusam ovako
Code:
for(int i=0;i<objListaObjekata.Count-1;i++)
    objElement=objListaObjekata[i];


dobijem gresku: Cannot implicitly convert type 'object' to 'clsElemenat. An explicit conversion exists (are you missing a cast?)

Imam primer za VisualBasic u kome je to odradjeno ovako i tu radi bez greske:
Code:
        For i = 0 To objListaObjekata.Count - 1
            objElement = objListaObjekata.Item(i)
Re: Pristup elementima ArrayListe 22.01.2009. u 18:10 · pre 216 meseci #2
C# koristi eksplicitno kastovanje, dok VB.Net implicitno kastovanje. To ti je i kompajler naveo kao gresku. ArrayList je niz object tipova tako da bi vratio iz tipa object u tip clsElemenat trebao bi da uradis kastovanje objElement = (clsElemenat) objListaObjekata[ i ]; procitaj malo po MSDN-u jer ti je ovo veoma vazna stvar. Takodje, u for petlji uslov za iteracije treba da je i < objListaObjekata.Count ili i <= objListaObjekata.Count-1 u protivnom, kako si napisao, nece nikada videti poslednji element niza.
Potpis
America national sport is called baseballs. It very similar to our sport, shurik, where we take dogs, shoot them in a field and then have a party.
Re: Pristup elementima ArrayListe 22.01.2009. u 20:11 · pre 216 meseci #3
foreach(object elementArrayListe in objListaObjekata)
{
objElement=(clsElemenat)elementArrayListe;
}
Re: Pristup elementima ArrayListe 22.01.2009. u 20:51 · pre 216 meseci #4
Možeš koristiti i tipizirane liste. U pitanju je List<> klasa i nalazi se u System.Collections.Generic namespace-u. Instanciraš je sledećim kodom:
Code:

List<clsElemenat> nazivListe = new List<clsElemenat>();

Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme