C# ArrayList bemutató példákkal

Mi az ArrayList a C#-ban?

Az ArrayList gyűjtemény hasonló a C# Arrays adattípusához. A legnagyobb különbség a tömblista gyűjtemény dinamikus jellegében rejlik.

Tömbök esetén meg kell határozni azon elemek számát, amelyeket a tömb tartalmazhat a tömb deklarációja idején. De az Array List gyűjtemény esetében ezt nem kell előre megtenni. Az elemek bármikor hozzáadhatók vagy eltávolíthatók a Tömblista gyűjteményből. Nézzük meg részletesebben a tömblista gyűjteményhez elérhető műveleteket.

Egy tömblista deklarációja

Az ArrayList deklarációja alább található. Egy tömblista az ArrayList Datatype segítségével jön létre. Az „új” kulcsszó egy ArrayList objektum létrehozására szolgál. Az objektumot ezután az a1 változóhoz rendeljük. Így most az a1 változót fogják használni a tömblista különböző elemeinek eléréséhez.

ArrayList a1 = new ArrayList()

Elemek hozzáadása egy tömbhöz

Az add metódus egy elem hozzáadására szolgál az ArrayList-hez. Az add metódus használható bármilyen adattípus elem hozzáadásához a tömblistához. Így hozzáadhat egész számot, karakterláncot, vagy akár logikai értéket a tömblistához. Az összeadási módszer általános szintaxisát az alábbiakban adjuk meg

ArrayList.add(element)

Az alábbiakban bemutatunk néhány példát az „add” módszer használatára. Az add metódus segítségével különféle adattípusokat adhatunk a tömblista gyűjteményhez.

Az alábbiakban példákat láthat arra, hogyan adhatunk egész szám karakterláncokat, sőt logikai értékeket is a tömblista gyűjteményhez.

  • a1.add(1) – Ez egész számot ad a gyűjteményhez
  • a1.add("Példa") – Ez egy karakterlánc-értéket ad a gyűjteményhez
  • a1.add(true) – Ez logikai értéket ad a gyűjteményhez

Lássuk, hogyan működik ez kód szinten. Az összes alább említett kód be lesz írva a konzolalkalmazásunkba. A kód a Program.cs fájlunkba kerül.

Az alábbi programban megírjuk a kódot egy új tömblista létrehozásához. Megjelenítjük az elemek hozzáadását és a Tömb lista elemeinek megjelenítését is.

ArrayList C#-ban

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();
  }
 }
}

Kód magyarázata: -

  1. Az első lépés a tömblistánk deklarálására szolgál. Itt az a1-et deklaráljuk változóként, amely a tömblistánk elemeit tartalmazza.
  2. Ezután az add kulcsszóval hozzáadjuk az 1-es számot, az „Example” karakterláncot és a „true” logikai értéket a tömblistához.
  3. Ezután a Console.WriteLine metódussal jelenítjük meg az egyes tömblistaelemek értékét a konzolon. Észreveheti, hogy a tömbökhöz hasonlóan az elemeket az indexpozíciókon keresztül érhetjük el. Tehát a tömblista első pozíciójának eléréséhez a [0] indexpozíciót használjuk. És így tovább, és így tovább.

Ha a fenti kódot megfelelően adta meg és a program lefut, a következő kimenet jelenik meg.

output:

ArrayList C#-ban

A kimenetből láthatja, hogy a tömblista összes eleme elküldésre kerül a konzolra.

Nézzünk meg néhány további módszert, amelyek az ArrayList részeként állnak rendelkezésre.

Gróf

Ez a módszer az ArrayList gyűjtemény elemeinek számának lekérésére szolgál. Az alábbiakban ennek az állításnak az általános szintaxisa látható.

ArrayList.Count() – Ez a metódus a tömblista által tartalmazott elemek számát adja vissza.

tartalmaz

Ezzel a módszerrel ellenőrizhető, hogy egy elem megtalálható-e az ArrayList gyűjteményben. Az alábbiakban ennek az állításnak az általános szintaxisa látható

ArrayList.Contains(element) – Ez a metódus igazat ad vissza, ha az elem szerepel a listában, ellenkező esetben false értéket ad vissza.

RemoveAt

Ez a módszer az ArrayList gyűjtemény egy adott pozíciójában lévő elem eltávolítására szolgál. Az alábbiakban ennek az állításnak az általános szintaxisa látható

ArrayList.RemoveAt(index) – Ez a módszer eltávolít egy elemet a tömblista egy adott helyéről.

Lássuk, hogyan működik ez kód szinten. Az összes alább említett kód be lesz írva a konzolalkalmazásunkba. A kód a Program.cs fájlunkba kerül.

Az alábbi programban megírjuk a kódot, hogy megnézzük, hogyan tudjuk használni a fent említett módszereket.

ArrayList C#-ban

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();
  }
 }
}

Kód magyarázata: -

  1. Tehát az első tulajdonság, amit látunk, a Count tulajdonság. Megkapjuk az a1 tömblista Count tulajdonságát, majd beírjuk a konzolba.
  2. A második részben a Contains metódussal nézzük meg, hogy az ArrayList a1 tartalmazza-e a 2. elemet. Ezután a Writeline paranccsal beírjuk az eredményt a konzolba.
  3. Végül az Elem eltávolítása módszer bemutatása érdekében az alábbi lépéseket hajtjuk végre:
    1. Először a tömblista Index 1. pozíciójában lévő elem értékét írjuk be a konzolba.
    2. Ezután eltávolítjuk a tömblista 1. Index pozíciójában lévő elemet.
    3. Végül ismét felírjuk a konzolba a tömblista Index 1. pozíciójában lévő elem értékét. Ez a lépéskészlet pontos képet ad arról, hogy az eltávolítási módszer megfelelően működik-e.

Ha a fenti kódot megfelelően adta meg és a program lefut, a következő kimenet jelenik meg.

output:

ArrayList C#-ban

Miért igaz az utolsó érték?

Ha látja az események sorozatát, akkor a Példa elemet eltávolítjuk a tömbből, mert ez az 1. pozícióban van. A tömb 1. pozíciója ezután lecserélődik arra, ami korábban a 2. pozícióban volt, amelynek értéke "true"

Összegzésként

A Array List gyűjtemény elemcsoportok tárolására szolgál. Az Array listagyűjtemény előnye, hogy dinamikus. A tömblista gyűjteménybe menet közben is hozzáadhat és eltávolíthat elemeket.

Foglald össze ezt a bejegyzést a következőképpen: