Yleiskatsaus C #: n kokoelmiin

Tässä artikkelissa aiomme oppia C #: n kokoelmista. Keräysluokat ovat erikoistuneita luokkia tietojen hakua ja tallentamista varten. Se allokoi muistin dynaamisesti elementeille. Sen avulla voimme suorittaa erilaisia ​​toimintoja, kuten päivittää, hakea, tallentaa jne. Kokoelmat ovat samanlaisia ​​kuin taulukko. Täällä meidän ei tarvitse määritellä kokoa etukäteen toisin kuin taulukko.

Seuraavat kokoelmat ovat 3 tapaa työskennellä

  • Järjestelmä.Kokoelmat.Yleiset luokat
  • Järjestelmä.Kokoelmat.Nopea luokka
  • Järjestelmä.Kokoelmaluokat

Esimerkkejä C #: n kokoelmista

Alla on esimerkkejä erityyppisistä kokoelmista C #: -

Esimerkki 1 - ArrayList

Se on kokoelma System.Collections -sarjaa. Sen avulla voidaan pitää usean tietotyypin tietoja ja kun tietoja lisätään, se laajenee automaattisesti.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ArrayListExample
(
class Program
(
static void Main(string() args)
(
var data = new ArrayList(); //arraylist collection
data.Add("Demo"); // add element
data.Add(1);
data.Add(5);
data.Add(26);
data.Add(56.4);
data.Add(32);
data.Remove(5); // remove element
foreach (object obj in data) // iteration
(
Console.WriteLine(obj);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä on tyyppi ArrayList. ArrayListissä on joitain elementtejä. Lisää () ja Poista () ovat menetelmiä, joita käytetään elementtien lisäämiseen ja poistamiseen kokoelmasta. foreachia käytetään iterointiin ja arvojen näyttämiseen.

lähtö:

Esimerkki 2 - Käytämme tässä luettelooperaatiota

Se on kokoelma System.Collections.Generic nimitilaa.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new List(); // list collection
value.Add("Cricket"); // add element
value.Add("Football");
value.Add("Volleyball");
value.Add("Hockey");
value.Add("Basketball");
value.Add("Tennis");
value.Remove("Football"); // remove element
value.Remove("Tennis");
value.Insert(3, "Badminton"); // insert element
foreach (string st in value)
(
Console.WriteLine(st);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä kokoelma on luettelotyyppiä. Lisää () ja Poista () -menetelmiä käytetään elementtien lisäämiseen tai poistamiseen luettelosta. Lisää () käytetään myös elementin lisäämiseen luetteloon määriteltyyn hakemistoon. Foreachia käytetään iterointiin ja arvojen näyttämiseen.

lähtö:

Esimerkki 3: Lajiteltu luettelo

Se koostuu kokoelman avaimista ja arvoista.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new SortedList(); // sortedlist collection
value.Add("java", 3); // add element
value.Add("javascript", 4);
value.Add("c-sharp", 5);
value.Add("dotnet", 25);
value.Add("python", 27);
value.Add("typescript", 57);
foreach (var pair in value)
(
Console.WriteLine(pair);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä kokoelma on tyyppilajiteltu. Luettelossa on useita paria avaimia ja arvoja. Se edustaa periaatteessa lajiteltua näppäinparia ja arvoja.

lähtö:

Esimerkki 4: linkitetty luettelo

Periaatteessa se sallii elementtien pääsyn peräkkäin.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new LinkedList(); // linkedlist collection
value.AddLast(13); // add element
value.AddLast(33);
value.AddLast(23);
value.AddLast(51);
value.AddLast(60);
value.AddFirst(4);
value.AddFirst(6);
LinkedListNode node = value.Find(51); // find the node
value.AddBefore(node, 40);
foreach (int num in value)
(
Console.WriteLine(num);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä kokoelma on tyyppi Linkedlist. AddLast () käytetään elementin sijoittamiseen viimeiseen sijaintiin, kun taas AddFirst () käytetään elementin sijoittamiseen luettelon ensimmäiseen kohtaan. Linkedlist koostuu solmusta. Etsi () -ominaisuutta käytetään arvon ja paikka-arvon löytämiseen ennen sitä.

Tulos:

Esimerkki 5 - sanakirja

Se koostuu ainutlaatuisesta avainparista ja arvoista.

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var pair = new Dictionary(); // dictionary collection
pair.Add("in", "India"); // add keys and values
pair.Add("af", "Africa");
pair.Add("us", "United States");
pair.Add("ja", "Japan");
pair.Add("ch", "China");
pair.Add("ca", "Canada");
Console.WriteLine("Keys present in the dictionary:");
var key = new List(pair.Keys);
foreach (string k in key)
(
Console.WriteLine("(0)", k);
)
Console.WriteLine("Values present in the dictionary:");
var value = new List(pair.Values);
foreach (string val in value)
(
Console.WriteLine("(0)", val);
)
Console.ReadLine();
)
)
)

Yllä olevassa esimerkissä kokoelma on tyyppisanakirja, joka sisältää avaimen ja niiden arvot. Foreachia käytetään avainten ja arvojen iterointiin.

ulostulo

Esimerkki 6 - pino

Se perustuu viimeksi-ensin-ulos-rakenteeseen. Jonon viimeinen elementti on ensimmäinen poistettava.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new Stack(); // stack collection
value.Push(10); // adding the element
value.Push(40);
value.Push(33);
value.Push(62);
value.Push(48);
value.Push(21);
value.Push(31);
Console.WriteLine(value.Pop());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (int item in value)
(
Console.WriteLine(item);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä kokoelma on tyypin pino. Painamalla () käytetään elementin asettamiseen yläosaan. Pop () on tarkoitettu elementin poistamiseen ja palauttamiseen ja Peek () on pinon yläosan palauttaminen.

lähtö:

Esimerkki # 7 - Jono

Se perustuu First-In-First-Out -rakenteeseen. Jonon ensimmäinen elementti on ensimmäinen poistettava.

Koodi:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(static void Main(string() args)
(
var value = new Queue(); // queue collection
value.Enqueue("Item 1"); // add element
value.Enqueue("Item 2");
value.Enqueue("Item 3");
value.Enqueue("Item 4");
value.Enqueue("Item 5");
value.Enqueue("Item 6");
value.Enqueue("Item 7");
Console.WriteLine(value.Dequeue());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (string num in value)
(
Console.WriteLine(num);
Console.ReadLine();
)
)
)
)

Yllä olevassa esimerkissä; kokoelma on tyyppijono. Enqueue () on lisäyselementti jonon lopussa. Dequeue () on tarkoitettu elementin poistamiseen jonon alusta . Peek () käytetään tuotteen palauttamiseen.

lähtö:

Joten kokoelmia voidaan käyttää monella tapaa. Kokoelmat ovat samanlaisia ​​kuin joukko. Täällä meidän ei tarvitse määritellä kokoa etukäteen toisin kuin taulukko.

Suositellut artikkelit

Tämä on opas kokoelmiin C #: ssä. Tässä keskustellaan C # -kokoelmien yleiskatsauksesta ja erilaisista esimerkeistä koodin toteutuksen ja ouputin kanssa. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Täydellinen opas lajitteluun C #
  2. Iteratorien menetelmät C #: ssä
  3. Tyypit kuviot C #
  4. Kuinka osoittimet toimivat C #: ssä?