Översikt över samlingar i C #

I den här artikeln ska vi lära oss om samlingarna i C #. Samlingskurser är specialklasser för hämtning och datalagring. Det fördelar minnet dynamiskt till elementen. Med hjälp av det kan vi utföra olika operationer som uppdatering, hämtning, lagring osv. Samlingar liknar en matris. Här behöver vi inte definiera storleken i förväg till skillnad från en matris.

Det finns tre sätt att arbeta med samlingar som följer

  • System.Collections.Generic klasser
  • System.Collections.Concurrentklasser
  • System.Collections klasser

Exempel på samlingar i C #

Nedan följer några exempel på olika typer av samlingar i C #: -

Exempel 1 - ArrayList

Det är en samling av System.Collections. Det gör det möjligt att hålla data från flera datatyper och när data läggs till expanderas de automatiskt.

Koda:

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

I exemplet ovan finns det en samling av typen ArrayList. Det finns några element i ArrayList. Lägg till () och Ta bort () är de metoder som används för att lägga till och ta bort elementen från samlingen. foreach används för iterationen och visar värdena.

Produktion:

Exempel 2 - Vi kommer att använda listoperation här

Det är en samling av System.Collections.Generic namnutrymme.

Koda:

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

I exemplet ovan är samlingen av en listtyp. Metoderna Lägg till () och Ta bort () används för att lägga till eller ta bort elementen från listan. Insert () används också för att infoga elementet i listan vid ett definierat index. Foreach används för iteration och visar värdena.

Produktion:

Exempel 3: Sorterad lista

Det består av nycklar och värden i en samling.

Koda:

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

I exemplet ovan är samlingen av typen sorterad lista. Det finns flera par nycklar och värden i listan. I princip representerar det sorterade paret av nycklar och värden.

Produktion:

Exempel 4: Länkad lista

Det tillåter i grunden sekvensiell åtkomst till elementen.

Koda:

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

I exemplet ovan är samlingen av typen Linkedlist. AddLast () används för att placera elementet i den sista positionen medan AddFirst () används för att placera elementet i listans första position. Länkad lista består av en nod. Sök () används för att hitta värdet och placera värdet före det.

Utgång:

Exempel 5 - Ordbok

Det består av unika nyckelpar och värden.

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

I exemplet ovan är samlingen av en typordbok som innehåller nyckel och deras värden. Foreach används för iteration av nycklar och värden.

Produktion

Exempel 6 - Stack

Det är baserat på strukturen Last-In-First-Out. Det sista elementet i kön är det första som tas bort.

Koda:

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

I exemplet ovan är samlingen av typstapel. Push () används för att sätta in elementet upptill. Pop () är för att ta bort och returnera elementet och Peek () är för att returnera det övre elementet i stacken.

Produktion:

Exempel 7 - Kö

Det är baserat på First-In-First-Out-strukturen. Det första elementet i kön är det första som tas bort.

Koda:

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

I ovanstående exempel; samling är av typkön. Enqueue () är för infogningselementet i slutet av kön. Dequeue () är för att ta bort elementet från början av kön . Peek () används för att returnera föremålet.

Produktion:

Så det finns många sätt vi kan använda samlingarna. Samlingar liknar en matris. Här behöver vi inte definiera storleken i förväg till skillnad från matris.

Rekommenderade artiklar

Detta har varit en guide till samlingar i C #. Här diskuterar vi översikten och olika exempel på samlingar i C # med kodimplementering och ouput. Du kan också titta på följande artiklar för att lära dig mer -

  1. Komplett guide till sortering i C #
  2. Metoder för Iteratorer i C #
  3. Typer av mönster i C #
  4. Hur fungerar Pekare i C #?

Kategori: