Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa List<> komandom

[es] :: .NET :: .NET Desktop razvoj :: Problem sa List<> komandom

[ Pregleda: 2029 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ZoranV
Zoran Vukovic

Član broj: 124559
Poruke: 29
*.dynamic.sbb.rs.



+1 Profil

icon Problem sa List<> komandom05.10.2011. u 14:02 - pre 152 meseci
Upoznajem se sa komandom List<>, imam problem (ili ne shvatam)

kako da mi vrati vrednost indeksa određenog člana niza

Želim da se krećem kroz niz, tako što ću povećavati ili smanjivati vrednost indeksa.
Pokušao sam da to rešim sa rednim brojem zapisa,
ali tu moram početi od broja 1 da bi program radio kako treba
i sve je uredu dok ne obrišem neki zapis i poremetim kontinuitet.
A i nije dobro rešenje - ne mora sve počinjati od broja 1.


Code (csharp):
   
List<Vozac> LV = new List<Vozac>();
Vozac vozac; // klasa sa podacima
 // čita prvo trenutni RB
int a = Convert.ToInt16(txtRB.Text);
//učitava objekat sa manjim RB za 1
txtRB.Text = LV[a-1].RB;
txtPrezime.Text = LV[a-1].Prezime;
txtIme.Text = LV[a-1].Ime;
 


Mora da postoji komanda da pokaže trenutni index.

P.S. Kako da u [code] unesem opciju za C# kod ?


[Ovu poruku je menjao mmix dana 05.10.2011. u 15:22 GMT+1]

[Ovu poruku je menjao ZoranV dana 07.10.2011. u 08:19 GMT+1]

[Ovu poruku je menjao Shadowed dana 07.10.2011. u 08:58 GMT+1]
 
Odgovor na temu

AMD guy
Miroslav
.NET developer

Član broj: 128930
Poruke: 1007

Sajt: www.its.edu.rs


+38 Profil

icon Re: Problem sa List<> komandom05.10.2011. u 14:11 - pre 152 meseci
Za code je ovo
Citat:
[code:(csharp)][/code]


Bez zagrada
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
 
Odgovor na temu

wex-alpha
Sarajevo

Član broj: 7580
Poruke: 845
31.176.250.*



+13 Profil

icon Re: Problem sa List<> komandom06.10.2011. u 10:17 - pre 152 meseci
Sve ti je ovjde opisano, lagano za razumjeti.

http://www.dotnetperls.com/list
 
Odgovor na temu

ZoranV
Zoran Vukovic

Član broj: 124559
Poruke: 29
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problem sa List<> komandom06.10.2011. u 10:52 - pre 152 meseci
Vrlo često sam na ovom sajtu ali i on i drugi daju samo konkretne vrednosti indexa ,
ali ono što mi treba je da mi vrati vrednost index-a trenutno odabranog objekta.

U svakom slučaju hvala.
 
Odgovor na temu

nikitaGradov
Beograd

Član broj: 223576
Poruke: 206
92.244.132.*



+3 Profil

icon Re: Problem sa List<> komandom06.10.2011. u 11:06 - pre 152 meseci
Citat:
ZoranV: Upoznajem se sa komandom List<>, imam problem (ili ne shvatam)

kako da mi vrati vrednost indeksa određenog člana niza

Želim da se krećem kroz niz, tako što ću povećavati ili smanjivati vrednost indeksa.
Pokušao sam da to rešim sa rednim brojem zapisa,
ali tu moram početi od broja 1 da bi program radio kako treba
i sve je uredu dok ne obrišem neki zapis i poremetim kontinuitet.
A i nije dobro rešenje - ne mora sve počinjati od broja 1.


Code (csharp):
   
List<Vozac> LV = new List<Vozac>();
Vozac vozac; // klasa sa podacima
 // čita prvo trenutni RB
int a = Convert.ToInt16(txtRB.Text);
//učitava objekat sa manjim RB za 1
txtRB.Text = listaVozaca[a-1].RB;
txtPrezime.Text = listaVozaca[a].Prezime;
txtIme.Text = listaVozaca[a].Ime;
 


Mora da postoji komanda da pokaže trenutni index.

P.S. Kako da u
Code:
 unesem opciju za C# kod ?


[sub][[b]Ovu poruku je menjao mmix dana 05.10.2011. u 15:22 GMT+1[/b]][/sub]


List<> NIJE komanda - LIST<> je vrsta STRUKTURE PODATAKA ... konkretno, List<> je dinamicka struktura podataka, ili tacnije: dinamicka lista ... ovo dinamicki znaci: da mozes dodadavati/brisati clanove iz te strukture podataka bezuslovno i bilo kada ... i sam si napisao da si primijetio da 'poremetis kontinuitet, kad obrises neki zapis'.

Ne znam sta podrazumijevas pod 'trenutnim indeksom' i sta zelis da uradis - ako ti nesto znaci u List<> postoje metodi: Find(), FindAll() i FindIndex(), od kojih ce ovaj poslednji da vrati cjelobrojni indeks clana, koji zadovoljava kriterijum pretrazivanja. 

List<> mozes pretrazivati, recimo, u 'for' petlji:

Code:

for (indeks=0;indeks<imeListe.Count;indeks++)
{
  imeListe[indeks] = nekiPodatak;
}


Ako zelis da dodas neki podatak u List<>, koristis metod: Add(), koji dodaje podatak na KRAJ liste. Ako zelis da izmijenis neki podatak ili da pronadjes podatak koji zadovoljava neki kriterijum pretrazivanja, koristi neki od metoda, koje sam gore nabrojao (Find(), ...).

Jedan, da ga nazovem, 'basic' clanak o List<>, sa jednostavnim primjerima, je ovdje: http://www.dotnetperls.com/list.
Programming is fun, but writing good software is hard ...
 
Odgovor na temu

ZoranV
Zoran Vukovic

Član broj: 124559
Poruke: 29
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problem sa List<> komandom07.10.2011. u 07:18 - pre 152 meseci
Očigledno je da nisam dobro objasnio.

Želim da se krećem napred i nazad kroz List<> niz promenom vrednosti index-a.

Potrebna mi je povratna informacija na kom se trenutno index-u nalazim (kao što vidite ja sam to u primeru veoma loše rešio preko podatka RB koji se nalazi u TextBox-u trenutno "vidljivog" objekta)

Bez znanja tog podatka sigurno kretanje kroz index-e moguće je na dva načina:

1. počinjanjem od poslednjeg LV.Count, pa bi poslednji idex bio a=(LV.Count-1). Kretanje kroz List bi sada bilo a++ ili a--
2. Formranjem javne promeljive TrenutniIndex koji bi dobijala vrednost svake promene vrednosti index-a trenutno korišćenog objekta.

Verovatno je rešenje LV.FindIndex(problem je šta ovde postaviti) . Ovo bi trebalo da vrati int podatak index-a trenutno korišćenog objekta.
Znači onda bi prethodni objekat bio na LV[LV.FindIndex(???)-1].RB itd.

 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Problem sa List<> komandom07.10.2011. u 07:36 - pre 152 meseci
nikita ti je objasnio da List<T> nema positional tracking i ne pamti poziciju. Zato npr winforms ima BindingSource koji to radi za tebe u okviru forme. Jedina vrsta iteracije koju List podrzava je kroz deklarisani enumerator ali to ti je forward-only.

Dakle, moras ti da pratis index u svom kodu i da kroistis default indexer liste.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

ZoranV
Zoran Vukovic

Član broj: 124559
Poruke: 29
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problem sa List<> komandom07.10.2011. u 08:02 - pre 152 meseci
Ako sam dobro shvatio to je varijanta verzije 2. prethodne poruke.

Hvala
 
Odgovor na temu

nikitaGradov
Beograd

Član broj: 223576
Poruke: 206
92.244.132.*



+3 Profil

icon Re: Problem sa List<> komandom07.10.2011. u 09:48 - pre 152 meseci
Citat:
ZoranV: Vrlo često sam na ovom sajtu ali i on i drugi daju samo konkretne vrednosti indexa ,
ali ono što mi treba je da mi vrati vrednost index-a trenutno odabranog objekta.

U svakom slučaju hvala.


> ali ono što mi treba je da mi vrati vrednost index-a trenutno odabranog objekta

Ne znam sta konkretno radis i zasto ti treba 'vrednost index-a trenutno odabranog objekta', iz jedne DINAMICKE strukture podataka (kao sto je List<>).
Ali, ako ti NE treba sam 'indeks', nego ti treba vrijednost tekuceg CLANA iz liste, odnosno, sam clan na tekucoj poziciji, njega mozes dohvatiti sa:

nekaLista.GetEnumerator.Current.

Property 'Current' nije indeks tekuceg clana, nego bas tekuci clan.

Inace, u najboljoj namjeri, smatram da prije samog pocetka rada u bilo kom programskom jeziku, nije lose procitati o tome sta su STRUKTURE PODATAKA, a sta ALGORITAMSKO MODELOVANJE ...
Programming is fun, but writing good software is hard ...
 
Odgovor na temu

nikitaGradov
Beograd

Član broj: 223576
Poruke: 206
92.244.132.*



+3 Profil

icon Re: Problem sa List<> komandom07.10.2011. u 09:49 - pre 152 meseci
Samo mala ispravka, uz prethodni post.

Omaskom sam napisao:

nekaLista.GetEnumerator.Current,

a treba:

nekaLista.GetEnumerator().Current.

Pozdrav
Programming is fun, but writing good software is hard ...
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Problem sa List<> komandom

[ Pregleda: 2029 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.