C# Queue s primjerima: Što je C# Queue i kako se koristi?

Što je Queue u C#?

Queue je posebna kolekcija kućišta koja predstavlja prvi ušao prvi van koncept. Zamislite red ljudi koji čekaju autobus. Obično će prva osoba koja stane u red biti prva osoba koja će ući u autobus. Slično tome, zadnja osoba koja uđe u red bit će posljednja osoba koja će ući u autobus. Elementi se dodaju u red, jedan iznad drugog.

Proces dodavanja elementa u red je operacija stavljanja u red. Da biste uklonili element iz reda čekanja, možete koristiti operaciju dequeuer. Operacija u Queues C# slična je stogu koji smo vidjeli prije.

Pogledajmo detaljnije kako koristiti Queue u C# i operacije dostupne za kolekciju Queue u C#.

Deklaracija o redu čekanja

Deklaracija reda čekanja je navedena u nastavku. Queue se kreira uz pomoć vrste podataka Queue. Ključna riječ "novo" koristi se za stvaranje objekta reda čekanja. Objekt se zatim dodjeljuje varijabli qt.

Queue qt = new Queue()

Dodavanje elemenata u red čekanja

Metoda enqueue koristi se za dodavanje elementa u red čekanja. Opća sintaksa izjave data je u nastavku.

Queue.enqueue(element)

Uklanjanje elemenata iz reda čekanja

Metoda dequeue koristi se za uklanjanje elementa iz reda čekanja. Operacija dequeue će vratiti prvi element reda. Opća sintaksa izjave data je u nastavku

Queue.dequeue()

Računati

Ovo se svojstvo koristi za dobivanje broja stavki u redu čekanja. Ispod je opća sintaksa ove izjave.

Queue.Count

sadrži

Ova se metoda koristi da se vidi je li element prisutan u redu čekanja. Ispod je opća sintaksa ove izjave. Naredba će vratiti true ako element postoji, inače će vratiti vrijednost false.

Queue.Contains(element)

Sada, da vidimo kako ovo radi na razini koda. Sav dolje navedeni kod bit će zapisan u našu konzolnu aplikaciju.

Kod će biti zapisan u našu datoteku Program.cs. U donjem programu napisat ćemo kod da vidimo kako možemo koristiti gore navedene metode.

Primjer

U ovom primjeru Queue u C#, vidjet ćemo kako se stvara red. Zatim ćemo vidjeti kako prikazati elemente reda čekanja i koristiti metode Count i Contain.

Red u C#
C# primjer reda čekanja
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)
  {
   Queue qt = new Queue();
   qt.Enqueue(1);
   qt.Enqueue(2);
   qt.Enqueue(3);

   foreach (Object obj in qt)
   {
    Console.WriteLine(obj);
   }
    Console.WriteLine(); Console.WriteLine();
    Console.WriteLine("The number of elements in the Queue " + qt.Count);
    Console.WriteLine("Does the Queue contain " + qt.Contains(3));
    Console.ReadKey();
   }
 }
}

Objašnjenje koda

  1. Prvi korak se koristi za deklariranje reda čekanja. Ovdje deklariramo qt kao varijablu za držanje elemenata našeg reda čekanja.
  2. Zatim dodajemo 3 elementa u naš red čekanja. Svaki element se dodaje metodom "u red čekanja".
  3. Jedna stvar koju treba primijetiti u vezi s redovima čekanja je da se elementima ne može pristupiti preko pozicije indeksa kao što je popis polja. Moramo upotrijebiti drugačiji pristup za prikaz elemenata reda. Dakle, evo kako ćemo prikazati elemente reda čekanja.
    • Prvo deklariramo privremenu varijablu koja se zove obj. Ovo će se koristiti za držanje svakog elementa reda čekanja.
    • Zatim koristimo naredbu foreach za prolazak kroz svaki element reda čekanja.
    • Za svaki Queue element, vrijednost se dodjeljuje varijabli obj.
    • Zatim koristimo naredbu Console.Writeline za prikaz vrijednosti na konzoli.
  4. Koristimo svojstvo "Count" da dobijemo broj stavki u redu čekanja. Ovo svojstvo će vratiti broj. Zatim ovu vrijednost prikazujemo na konzoli.
  5. Zatim koristimo metodu "Sadrži" da vidimo je li vrijednost 3 prisutna u našem redu čekanja. Ovo će vratiti vrijednost true ili false. Zatim prikazujemo ovu povratnu vrijednost na konzoli.

Ako se gornji kod ispravno unese i program se pokrene, prikazat će se sljedeći izlaz.

Izlaz

Red u C#
C# primjer reda čekanja

Iz izlaza možemo jasno vidjeti da su elementi reda prikazani. Imajte na umu da, za razliku od "stog” u “redu čekanja” prvo se prikazuje prvi element gurnut u red čekanja. Broj elemenata reda također je prikazan u izlazu. Također, vrijednost True se prikazuje da kaže da je vrijednost 3 definirana u redu čekanja.

C# Queue Dequeue

Sada pogledajmo funkciju uklanjanja. Vidjet ćemo kod potreban za uklanjanje posljednjeg elementa iz reda čekanja.

C# Queue Dequeue
C# Queue Dequeue primjer
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)
  {
   Queue qt = new Queue();
   qt.Enqueue(1);
   qt.Enqueue(2);
   qt.Enqueue(3);

   qt.Dequeue();

   foreach (Object obj in qt)
   {
    Console.WriteLine(obj);
   }
    Console.ReadKey();
   }
 }
}

Objašnjenje koda

  1. Ovdje samo izdajemo metodu "dequeue", koja se koristi za uklanjanje elementa iz reda čekanja. Ova metoda će ukloniti prvi element reda čekanja.

Ako se gornji kod ispravno unese i program se pokrene, prikazat će se sljedeći izlaz.

Izlaz:

C# Queue Dequeue
C# Queue Dequeue primjer

Iz izlaza možemo vidjeti da je prvi element koji je dodan u red čekanja, a to je bio element 1, uklonjen iz reda čekanja.

rezime

Red se temelji na konceptu prvi ušao prvi izašao. Operacija dodavanja elementa u red čekanja naziva se operacija stavljanja u red čekanja. Operacija uklanjanja elementa iz reda čekanja naziva se operacija uklanjanja iz reda čekanja.