50 likes | 142 Views
Microsoft.NET környezet. Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz. 1. Indexelő property. Akkor írunk ilyet, ha az osztályt olyan alakban akarjuk kezelni, mintha ő egy tömb lenne. class LancoltLista { p ublic String this [int sorszam ]
E N D
Microsoft.NET környezet Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz 1
Indexelő property Akkor írunk ilyet, ha az osztályt olyan alakban akarjuk kezelni, mintha ő egy tömb lenne. class LancoltLista { public Stringthis[int sorszam] { get { ... a láncolt listában az „sorszam”-adik elem megkeresése return megtalalt_elem; } set { … a láncolt lista „sorszam”-adik elemének javítása, vagy új elem felvétele a láncolt listába … (value) } } } 2
Indexelő property Ezt úgy érhetjük el, hogy - írunk egy ‘this’ nevű property-t az osztályhoz - megadhatjuk, hogy milyen típusú értékkel akarjuk indexelni (előző példában int) - ennek az index-nek adunk egy nevet (‘sorszam’) LancoltLista lista = new LancoltLista(); lista[0] = ”hello”; THIS->SET hívása, SORSZAM=0, VALUE=„hello” String s = lista[0] as String THIS->GET hívása, SORSZAM=0 3
Indexelő property Ilyen indexelője van : class String { public charthis[int n] { get { a string n. karakterének visszaadása ... } } class ArrayList { public Objectthis[int n] { get { return „a lista n. értéke” } set { „a lista n. eleme” = value ; } } 4
Indexelő property Mátrix-szerű indexelőt is írhatunk: class HarmszogMatrix { public Objectthis[int sor, int oszlop] { get { ... } set { ... } } } 5