Prezentare generală a colecțiilor în C #

În acest articol, vom afla despre Colecțiile din C #. Clasele de colectare sunt clase specializate pentru preluare și stocare de date. Alocă în mod dinamic memoria elementelor. Cu ajutorul acestuia, putem efectua diverse operații, cum ar fi actualizarea, regăsirea, stocarea etc. Colecțiile sunt similare cu un tablou. Aici nu trebuie să definim în prealabil dimensiunea spre deosebire de un tablou.

Există 3 moduri de a lucra cu colecțiile care sunt urmate

  • System.Collections.Clase generice
  • Clase System.Collections.Concurrent
  • Clase System.Collections

Exemple de colecții în C #

Mai jos sunt câteva exemple de diferite tipuri de colecție în C #: -

Exemplul # 1 - ArrayList

Este o colecție de System.Collections. Permite reținerea datelor cu mai multe tipuri de date și pe măsură ce datele sunt adăugate, se extinde automat.

Cod:

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

În exemplul de mai sus, există o colecție de tip ArrayList. Există câteva elemente în ArrayList. Add () și Remove () sunt metodele utilizate pentru a adăuga și elimina elementele din colecție. foreach este utilizat pentru iterație și afișarea valorilor.

ieşire:

Exemplul # 2 - Vom folosi aici operația listei

Este o colecție de sistem.Collections.Generic nume.

Cod:

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

În exemplul de mai sus, colecția este de tip listă. Metodele Add () și Remove () sunt utilizate pentru a adăuga sau elimina elementele din listă respectiv. Insert () este de asemenea utilizat pentru a insera elementul în listă la un indice definit. Foreach este utilizat pentru iterare și afișarea valorilor.

ieşire:

Exemplul # 3: Lista sortată

Este format din cheie și valori dintr-o colecție.

Cod:

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

În exemplul de mai sus, colecția este de tip sortedlist. Există mai multe perechi de chei și valori în listă. În principiu, reprezintă perechea de taste și valori sortate.

ieşire:

Exemplul # 4: listă legată

Practic permite accesul secvențial al elementelor.

Cod:

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

În exemplul de mai sus, colecția este de tipul Linkedlist. AddLast () este utilizat pentru a plasa elementul în ultima postare, în timp ce AddFirst () este utilizat pentru a plasa elementul la prima poziție a listei. Lista de legături constă dintr-un nod. Găsiți () este utilizat pentru a găsi valoarea și valoarea locului înaintea acesteia.

Rezultat:

Exemplul # 5 - Dicționar

Este format dintr-o pereche unică de taste și valori.

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

În exemplul de mai sus, colecția este de dicționar tip care conține cheia și valorile acestora. Foreach este utilizat pentru iterarea tastelor și valorilor.

producție

Exemplul # 6 - Pila

Se bazează pe structura Last-In-First-Out. Ultimul element al cozii este primul care a fost eliminat.

Cod:

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

În exemplul de mai sus, colecția este de tip stivă. Push () este folosit pentru a introduce elementul în partea de sus. Pop () este pentru eliminarea și returnarea elementului, iar Peek () este pentru returnarea elementului superior al stivei.

ieşire:

Exemplul # 7 - Coada

Se bazează pe structura First-In-First-Out. Primul element al cozii este primul care este eliminat.

Cod:

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

În exemplul de mai sus; colectarea este de tip coadă. Enqueue () este pentru elementul de introducere la sfârșitul cozii. Dequeue () este pentru eliminarea elementului de la începutul cozii . Peek () este utilizat pentru returnarea articolului.

ieşire:

Așadar, există multe moduri prin care putem folosi colecțiile. Colecțiile sunt similare cu un tablou. Aici nu trebuie să definim în prealabil dimensiunea spre deosebire de matrice.

Articole recomandate

Acesta a fost un ghid pentru Colecțiile din C #. Aici vom discuta imaginea de ansamblu și diferite exemple de colecții în C # cu implementarea codului și ouput. De asemenea, puteți arunca o privire la următoarele articole pentru a afla mai multe -

  1. Ghid complet de sortare în C #
  2. Metode de iteratori în C #
  3. Tipuri de modele în C #
  4. Cum funcționează pointerii în C #?