Čo je ArrayList v C #?
Zbierka ArrayList je podobná dátovému typu Arrays v C #. Najväčším rozdielom je dynamická povaha zbierky zoznamov polí.
Pre polia musíte definovať počet prvkov, ktoré môže pole obsahovať v čase deklarácie poľa. Ale v prípade kolekcie Array List to nie je potrebné robiť vopred. Prvky je možné kedykoľvek pridať alebo odstrániť z kolekcie Array List. Pozrime sa na operácie dostupné pre kolekciu zoznamov polí podrobnejšie.
Deklarácia zoznamu polí
Deklarácia ArrayList je uvedená nižšie. Zoznam polí sa vytvorí pomocou dátového typu ArrayList. Kľúčové slovo „nové“ sa používa na vytvorenie objektu ArrayList. Objekt sa potom priradí k premennej a1. Takže teraz sa premenná a1 použije na prístup k rôznym prvkom zoznamu polí.
ArrayList a1 = new ArrayList()
Pridávanie prvkov do poľa
Metóda add sa používa na pridanie prvku do ArrayList. Metódu add možno použiť na pridanie ľubovoľného druhu prvku údajového typu do zoznamu polí. Do zoznamu polí teda môžete pridať celé číslo, reťazec alebo dokonca boolovskú hodnotu. Všeobecná syntax metódy pridávania je uvedená nižšie
ArrayList.add(element)
Ďalej uvádzame niekoľko príkladov toho, ako je možné použiť metódu „pridať“. Metódu add možno použiť na pridanie rôznych typov údajov do kolekcie Array List.
Nižšie vidíte príklady toho, ako môžeme do kolekcie Array List pridať Integerove reťazce a dokonca aj booleovské hodnoty.
- a1.add (1) - Týmto sa do kolekcie pridá celočíselná hodnota
- a1.add („Príklad“) - Týmto sa do zbierky pridá hodnota reťazca
- a1.add (true) - Týmto sa do zbierky pridá logická hodnota
Teraz sa pozrime, ako to funguje na úrovni kódu. Všetky nižšie uvedené kódy budú zapísané do našej aplikácie Console. Kód sa zapíše do nášho súboru Program.cs.
V nižšie uvedenom programe napíšeme kód, aby sme vytvorili nový zoznam polí. Ukážeme tiež pridanie prvkov a zobrazenie prvkov zoznamu.
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();}}}
Vysvetlenie kódu: -
- Prvý krok sa používa na vyhlásenie nášho zoznamu polí. Tu deklarujeme a1 ako premennú na uchovanie prvkov nášho zoznamu polí.
- Potom pomocou kľúčového slova add pridáme do zoznamu polí číslo 1, reťazec „Example“ a boolovskú hodnotu „true“.
- Potom použijeme metódu Console.WriteLine na zobrazenie hodnoty každého prvku zoznamov polí do konzoly. Všimnete si, že rovnako ako polia, aj my môžeme k prvkom pristupovať prostredníctvom ich indexových pozícií. Na prístup k prvej pozícii v zozname polí teda používame indexovú pozíciu [0]. A tak ďalej a tak ďalej.
Ak je vyššie uvedený kód zadaný správne a program je spustený, zobrazí sa nasledujúci výstup.
Výkon:
Z výstupu vidíte, že všetky prvky zo zoznamu polí sa odosielajú do konzoly.
Pozrime sa na niekoľko ďalších metód, ktoré sú k dispozícii ako súčasť zoznamu ArrayList.
Gróf
Táto metóda sa používa na získanie počtu položiek v kolekcii ArrayList. Ďalej uvádzame všeobecnú syntax tohto vyhlásenia.ArrayList.Count () - táto metóda vráti počet prvkov, ktoré obsahuje zoznam polí.
Obsahuje
Táto metóda sa používa na zistenie, či je prvok prítomný v kolekcii ArrayList. Ďalej uvádzame všeobecnú syntax tohto vyhláseniaArrayList.Contains (element) - Táto metóda vráti hodnotu true, ak je prvok v zozname, inak vráti hodnotu false.
RemoveAt
Táto metóda sa používa na odstránenie prvku na konkrétnej pozícii v kolekcii ArrayList. Ďalej uvádzame všeobecnú syntax tohto vyhláseniaArrayList.RemoveAt (index) - Táto metóda odstráni prvok z konkrétnej pozície Zoznamu polí.
Teraz sa pozrime, ako to funguje na úrovni kódu. Všetky nižšie uvedené kódy budú zapísané do našej aplikácie Console. Kód sa zapíše do nášho súboru Program.cs.
V nižšie uvedenom programe napíšeme kód, aby sme zistili, ako môžeme vyššie uvedené metódy použiť.
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();}}}
Vysvetlenie kódu: -
- Prvá vlastnosť, ktorú vidíme, je teda vlastnosť Count. Získavame vlastnosť Count zo zoznamu polí a1 a potom ju zapisujeme do konzoly.
- V druhej časti pomocou metódy Contains zisťujeme, či ArrayList a1 obsahuje prvok 2. Výsledok potom zapíšeme do konzoly pomocou príkazu Writeline.
- Nakoniec, aby sme predviedli metódu Odstrániť prvok, vykonávame nasledujúce kroky,
- Najskôr zapíšeme hodnotu prvku na pozíciu indexu 1 zoznamu polí do konzoly.
- Potom odstránime prvok na pozícii indexu 1 v zozname polí.
- Nakoniec opäť zapíšeme hodnotu prvku na pozíciu indexu 1 zoznamu polí do konzoly. Táto skupina krokov poskytne reálnu predstavu o tom, či metóda odstránenia bude fungovať tak, ako má.
Ak je vyššie uvedený kód zadaný správne a program je spustený, zobrazí sa nasledujúci výstup.
Výkon:
Prečo je posledná hodnota pravdivá?
Ak vidíte sled udalostí, prvok Príklad je odstránený z poľa, pretože je na pozícii 1. Pozícia 1 poľa sa potom nahradí tým, čo bolo na pozícii 2 skôr, ktorej hodnota „true“ bola
Zhrnutie
- Kolekcia Zoznam polí sa používa na ukladanie skupiny prvkov. Výhodou kolekcie Array list je, že je dynamická. Priebežne môžete pridávať a odstraňovať prvky do kolekcie zoznamov polí.