Queue.Enqueue(Object) Methode

Definitie

Hiermee voegt u een object toe aan het einde van de Queue.

public:
 virtual void Enqueue(System::Object ^ obj);
public virtual void Enqueue(object obj);
public virtual void Enqueue(object? obj);
abstract member Enqueue : obj -> unit
override this.Enqueue : obj -> unit
Public Overridable Sub Enqueue (obj As Object)

Parameters

obj
Object

Het object dat moet worden toegevoegd aan de Queue. De waarde kan zijn null.

Voorbeelden

In het volgende voorbeeld ziet u hoe u elementen toevoegt aan het Queueelement, elementen verwijdert uit of Queuehet element aan het begin van het Queueelement weergeeft.

using System;
using System.Collections;
public class SamplesQueue  {

   public static void Main()  {

      // Creates and initializes a new Queue.
      Queue myQ = new Queue();
      myQ.Enqueue( "The" );
      myQ.Enqueue( "quick" );
      myQ.Enqueue( "brown" );
      myQ.Enqueue( "fox" );

      // Displays the Queue.
      Console.Write( "Queue values:" );
      PrintValues( myQ );

      // Removes an element from the Queue.
      Console.WriteLine( "(Dequeue)\t{0}", myQ.Dequeue() );

      // Displays the Queue.
      Console.Write( "Queue values:" );
      PrintValues( myQ );

      // Removes another element from the Queue.
      Console.WriteLine( "(Dequeue)\t{0}", myQ.Dequeue() );

      // Displays the Queue.
      Console.Write( "Queue values:" );
      PrintValues( myQ );

      // Views the first element in the Queue but does not remove it.
      Console.WriteLine( "(Peek)   \t{0}", myQ.Peek() );

      // Displays the Queue.
      Console.Write( "Queue values:" );
      PrintValues( myQ );
   }

   public static void PrintValues( IEnumerable myCollection )  {
      foreach ( Object obj in myCollection )
         Console.Write( "    {0}", obj );
      Console.WriteLine();
   }
}
/*
This code produces the following output.

Queue values:    The    quick    brown    fox
(Dequeue)       The
Queue values:    quick    brown    fox
(Dequeue)       quick
Queue values:    brown    fox
(Peek)          brown
Queue values:    brown    fox

*/
Imports System.Collections

Public Class SamplesQueue
    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a new Queue.
        Dim myQ As New Queue()
        myQ.Enqueue("The")
        myQ.Enqueue("quick")
        myQ.Enqueue("brown")
        myQ.Enqueue("fox")
        
        ' Displays the Queue.
        Console.Write("Queue values:")
        PrintValues(myQ)
        
        ' Removes an element from the Queue.
        Console.WriteLine("(Dequeue)    {0}", myQ.Dequeue())
        
        ' Displays the Queue.
        Console.Write("Queue values:")
        PrintValues(myQ)
        
        ' Removes another element from the Queue.
        Console.WriteLine("(Dequeue)    {0}", myQ.Dequeue())
        
        ' Displays the Queue.
        Console.Write("Queue values:")
        PrintValues(myQ)
        
        ' Views the first element in the Queue but does not remove it.
        Console.WriteLine("(Peek)       {0}", myQ.Peek())
        
        ' Displays the Queue.
        Console.Write("Queue values:")
        PrintValues(myQ)
    End Sub

    Public Shared Sub PrintValues(myCollection As IEnumerable)
        Dim obj As [Object]
        For Each obj In  myCollection
            Console.Write("    {0}", obj)
        Next obj
        Console.WriteLine()
    End Sub

End Class


' This code produces the following output.
' 
' Queue values:    The    quick    brown    fox
' (Dequeue)    The
' Queue values:    quick    brown    fox
' (Dequeue)    quick
' Queue values:    brown    fox
' (Peek)       brown
' Queue values:    brown    fox

Opmerkingen

De capaciteit van een Queue is het aantal elementen dat de Queue kan bevatten. Als er elementen aan een Queueworden toegevoegd, wordt de capaciteit automatisch verhoogd als vereist via herlocatie. De capaciteit kan worden verminderd door aan te roepen TrimToSize.

De groeifactor is het getal waarmee de huidige capaciteit wordt vermenigvuldigd wanneer een grotere capaciteit nodig is. De groeifactor wordt bepaald wanneer de Queue constructie wordt uitgevoerd. De capaciteit van de Queue zal altijd toenemen met een minimumwaarde, ongeacht de groeifactor; een groeifactor van 1,0 verhindert niet dat de Queue grootte toeneemt.

Als Count deze kleiner is dan de capaciteit van de interne matrix, is deze methode een O(1) bewerking. Als de interne matrix opnieuw moet worden toegewezen om het nieuwe element te kunnen gebruiken, wordt deze methode een O(n) bewerking, waar n is Count.

Van toepassing op

Zie ook