Ten artykuł został przetłumaczony przez maszynę. Aby wyświetlić jego treść w języku angielskim, zaznacz pole wyboru Angielski. Możesz też wyświetlić angielski tekst w okienku wyskakującym, przesuwając wskaźnik myszy nad konkretny tekst”.
Tłumaczenie
Angielski

Klasa Stack

.NET Framework (current version)
 

Data opublikowania: październik 2016

Reprezentuje proste ostatniego w pierwszej poza (LIFO)-uniwersalne zbiór obiektów.

Przestrzeń nazw:   System.Collections
Zestaw:  mscorlib (w mscorlib.dll)

System.Object
  System.Collections.Stack

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class Stack : ICollection, IEnumerable, ICloneable

NazwaOpis
System_CAPS_pubmethodStack()

Inicjuje nowe wystąpienie Stack klasy, która jest pusta i ma pojemność początkowej domyślne.

System_CAPS_pubmethodStack(ICollection)

Inicjuje nowe wystąpienie Stack Klasa, która zawiera elementy kopiowane z określonej kolekcji i ma takiej samej pojemności początkowej jako liczba elementy kopiowane.

System_CAPS_pubmethodStack(Int32)

Inicjuje nowe wystąpienie Stack klasy, która jest pusta i ma określony pojemności początkowej lub pojemności początkowej domyślne, zależności, która wartość jest większa.

NazwaOpis
System_CAPS_pubpropertyCount

Pobiera liczbę elementów znajdujących się w Stack.

System_CAPS_pubpropertyIsSynchronized

Pobiera lub ustala wartość wskazującą czy uzyskują dostęp do Stack jest zsynchronizowany (bezpieczne dla wątków).

System_CAPS_pubpropertySyncRoot

Pobiera obiekt, który może służyć do synchronizowania dostępu do Stack.

NazwaOpis
System_CAPS_pubmethodClear()

Usuwa wszystkie obiekty z Stack.

System_CAPS_pubmethodClone()

Tworzy płytką kopię Stack.

System_CAPS_pubmethodContains(Object)

Określa, czy element w Stack.

System_CAPS_pubmethodCopyTo(Array, Int32)

Kopie Stack do istniejącej jednowymiarowy Array, rozpoczynając od indeksu tablicy określonej wartości.

System_CAPS_pubmethodEquals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.(Dziedziczone z Object).

System_CAPS_protmethodFinalize()

Umożliwia spróbuj zwolnić zasoby i wykonywać inne operacje czyszczenia, zanim zostanie odzyskane przez wyrzucanie elementów bezużytecznych.(Dziedziczone z Object).

System_CAPS_pubmethodGetEnumerator()

Zwraca IEnumerator dla Stack.

System_CAPS_pubmethodGetHashCode()

Służy jako domyślna funkcji mieszania.(Dziedziczone z Object).

System_CAPS_pubmethodGetType()

Pobiera Type bieżącego wystąpienia.(Dziedziczone z Object).

System_CAPS_protmethodMemberwiseClone()

Tworzy płytką kopię bieżącego Object.(Dziedziczone z Object).

System_CAPS_pubmethodPeek()

Zwraca obiekt w górnej części Stack bez usuwania go.

System_CAPS_pubmethodPop()

Usuwa i zwraca obiekt w górnej części Stack.

System_CAPS_pubmethodPush(Object)

Wstawia obiekt w górnej części Stack.

System_CAPS_pubmethodSystem_CAPS_staticSynchronized(Stack)

Zwraca zsynchronizowany otoka (bezpieczne dla wątków) dla Stack.

System_CAPS_pubmethodToArray()

Kopie Stack do nowej tablicy.

System_CAPS_pubmethodToString()

Zwraca ciąg, który reprezentuje bieżący obiekt.(Dziedziczone z Object).

NazwaOpis
System_CAPS_pubmethodAsParallel()

Przeciążone. Umożliwia przetwarzanie równoległe zapytania.(Zdefiniowane przez ParallelEnumerable).

System_CAPS_pubmethodAsQueryable()

Przeciążone. Konwertuje IEnumerable do IQueryable.(Zdefiniowane przez Queryable).

System_CAPS_pubmethodCast<TResult>()

Elementy rzutowania IEnumerable do określonego typu.(Zdefiniowane przez Enumerable).

System_CAPS_pubmethodOfType<TResult>()

Filtry elementów IEnumerable na podstawie określonego typu.(Zdefiniowane przez Enumerable).

Ogólny wersję tej kolekcji, zobacz System.Collections.Generic.Stack<T>.

Pojemność Stack jest liczba elementów, które Stack może przechowywać. Gdy elementy są dodawane do Stack, automatyczne zwiększenie pojemności zgodnie z wymaganiami za pośrednictwem ponowny przydział.

Jeśli Count jest mniejsza niż pojemność stosu, Push jest operacją O(1). Jeśli pojemność wymaga zwiększenia w celu uwzględnienia nowego elementu Push staje się operacja O (n) operacji, gdzie n jest Count. Pop jest operacją O(1).

Stack akceptuje null jako prawidłowa wartość i umożliwia zduplikowane elementy.

Poniższy przykład przedstawia sposób tworzenia i dodawania wartości Stack i sposób wyświetlania wartości.

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

   public static void Main()  {

      // Creates and initializes a new Stack.
      Stack myStack = new Stack();
      myStack.Push("Hello");
      myStack.Push("World");
      myStack.Push("!");

      // Displays the properties and values of the Stack.
      Console.WriteLine( "myStack" );
      Console.WriteLine( "\tCount:    {0}", myStack.Count );
      Console.Write( "\tValues:" );
      PrintValues( myStack );
   }

   public static void PrintValues( IEnumerable myCollection )  {
      foreach ( Object obj in myCollection )
         Console.Write( "    {0}", obj );
      Console.WriteLine();
   }

}


/* 
This code produces the following output.

myStack
    Count:    3
    Values:    !    World    Hello
*/ 

Platforma uniwersalna systemu Windows
Dostępne od 10
.NET Framework
Dostępne od 1.1

Publiczne statyczne (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.

Aby zagwarantować bezpieczeństwo wątków z Stack, wszystkie operacje muszą być wykonywane przez otoki zwróconych przez Synchronized metody.

Wyliczanie w kolekcji jest wewnętrznie procedurą odporną na wielowątkowość. Nawet jeśli kolekcja jest zsynchronizowany, inne wątki mogą modyfikować kolekcji, która powoduje, że moduł wyliczający wyjątek. Aby zagwarantować bezpieczeństwo wątków podczas wyliczania, można zablokować kolekcję podczas całego procesu wyliczania lub rejestrować wyjątki wynikłe ze zmian wprowadzanych przez inne wątki.

Powrót do początku
Pokaż: