C# ArrayListi õpetus koos näidetega
Mis on ArrayList C#-s?
ArrayList kollektsioon sarnaneb C# andmetüübiga Arrays. Suurim erinevus on massiiviloendikogu dünaamiline olemus.
Massiivide jaoks peate määratlema elementide arvu, mida massiiv võib massiivi deklareerimise ajal sisaldada. Kuid kogu Array List puhul pole seda vaja eelnevalt teha. Elemente saab massiiviloendi kollektsioonist igal ajal lisada või sealt eemaldada. Vaatame üksikasjalikumalt massiivi loendikogu jaoks saadaolevaid toiminguid.
Massiiviloendi deklaratsioon
ArrayListi deklaratsioon on toodud allpool. Massiiviloend luuakse andmetüübi ArrayList abil. Märksõna "uus" kasutatakse ArrayListi objekti loomiseks. Seejärel määratakse objekt muutujale a1. Nii et nüüd kasutatakse massiivi loendi erinevatele elementidele juurdepääsuks muutujat a1.
ArrayList a1 = new ArrayList()
Elementide lisamine massiivi
Lisamismeetodit kasutatakse elemendi lisamiseks loendisse ArrayList. Lisamismeetodit saab kasutada mis tahes andmetüübi elemendi lisamiseks massiivi loendisse. Nii saate massiivi loendisse lisada täisarvu või stringi või isegi tõeväärtuse. Lisamismeetodi üldine süntaks on toodud allpool
ArrayList.add(element)
Allpool on mõned näited lisamismeetodi kasutamisest. Lisamismeetodit saab kasutada mitmesuguste andmetüüpide lisamiseks massiiviloendi kogusse.
Allpool näete näiteid selle kohta, kuidas saame massiiviloendi kogusse lisada täisarvu stringe ja isegi Boole'i väärtusi.
- a1.add(1) – see lisab kogule täisarvu väärtuse
- a1.add("Näide") – see lisab kogule stringi väärtuse
- a1.add(true) – see lisab kogule Boole'i väärtuse
Nüüd vaatame, kuidas see töötab koodi tasemel. Kogu allpool nimetatud kood kirjutatakse meie konsoolirakendusse. Kood kirjutatakse meie faili Program.cs.
Allolevas programmis kirjutame uue massiiviloendi loomiseks koodi. Näitame ka elementide lisamist ja massiivi loendi elementide kuvamist.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1[0]); Console.WriteLine(a1[1]); Console.WriteLine(a1[2]); Console.ReadKey(); } } }
Koodi selgitus: -
- Esimest sammu kasutatakse meie massiiviloendi deklareerimiseks. Siin deklareerime a1 muutujaks meie massiiviloendi elementide hoidmiseks.
- Seejärel kasutame massiivi loendisse numbri 1 , stringi "Example" ja Boole'i väärtuse "true" lisamiseks lisa märksõna.
- Seejärel kasutame meetodit Console.WriteLine, et kuvada konsooli iga massiivi loendite elemendi väärtus. Märkate, et nagu massiivid, pääseme elementidele juurde nende indeksi positsioonide kaudu. Nii et massiiviloendi esimesele positsioonile pääsemiseks kasutame indeksi positsiooni [0]. Ja nii edasi ja nii edasi.
Kui ülaltoodud kood on õigesti sisestatud ja programm käivitatakse, kuvatakse järgmine väljund.
Väljund:
Väljundist näete, et kõik massiiviloendi elemendid saadetakse konsooli.
Vaatame veel mõnda meetodit, mis on saadaval ArrayListi osana.
Loendama
Seda meetodit kasutatakse ArrayListi kogus olevate üksuste arvu saamiseks. Allpool on selle avalduse üldine süntaks.
ArrayList.Count() – see meetod tagastab massiiviloendis sisalduvate elementide arvu.
Sisaldab
Seda meetodit kasutatakse selleks, et näha, kas element on ArrayListi kogus olemas. Allpool on selle avalduse üldine süntaks
ArrayList.Contains(element) – see meetod tagastab tõese, kui element on loendis olemas, vastasel juhul tagastab see vale.
EemaldaAt
Seda meetodit kasutatakse elemendi eemaldamiseks kindlast positsioonist ArrayListi kogus. Allpool on selle avalduse üldine süntaks
ArrayList.RemoveAt(index) – see meetod eemaldab elemendi massiiviloendi kindlast positsioonist.
Nüüd vaatame, kuidas see töötab koodi tasemel. Kogu allpool nimetatud kood kirjutatakse meie konsoolirakendusse. Kood kirjutatakse meie faili Program.cs.
Allolevas programmis kirjutame koodi, et näha, kuidas saame ülalnimetatud meetodeid kasutada.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1.Count); Console.WriteLine(a1.Contains(2)); Console.WriteLine(a1[1]); a1.RemoveAt(1); Console.WriteLine(a1[1]); Console.ReadKey(); } } }
Koodi selgitus: -
- Seega on esimene omadus, mida me näeme, krahv. Me saame massiiviloendi a1 atribuudi Count ja kirjutame selle seejärel konsooli.
- Teises osas kasutame Contains meetodit, et näha, kas ArrayList a1 sisaldab elementi 2. Seejärel kirjutame tulemuse käsu Writeline kaudu konsooli.
- Lõpuks, elemendi eemaldamise meetodi tutvustamiseks teeme alltoodud toimingud,
- Kõigepealt kirjutame konsooli massiiviloendi positsioonil Indeks 1 oleva elemendi väärtuse.
- Seejärel eemaldame massiiviloendi indeksi positsioonil 1 oleva elemendi.
- Lõpuks kirjutame uuesti konsooli massiiviloendi positsioonil Index 1 oleva elemendi väärtuse. See toimingute kogum annab õiglase ettekujutuse, kas eemaldamismeetod töötab nii, nagu peaks.
Kui ülaltoodud kood on õigesti sisestatud ja programm käivitatakse, kuvatakse järgmine väljund.
Väljund:
Miks on viimane väärtus tõene?
Kui näete sündmuste jada, eemaldatakse massiivist element Näide, kuna see asub positsioonil 1. Massiivi positsioon 1 asendatakse seejärel sellega, mis oli varem positsioonis 2, mille väärtus on "true".
kokkuvõte
Kogumit Array List kasutatakse elementide rühma salvestamiseks. Array loendikogu eeliseks on see, et see on dünaamiline. Saate massiivi loendikogusse elemente käigupealt lisada ja eemaldada.