ArrayList.Remove(Object) Metoda

Definicja

Usuwa pierwsze wystąpienie określonego obiektu z obiektu ArrayList.

C#
public virtual void Remove (object obj);
C#
public virtual void Remove (object? obj);

Parametry

obj
Object

Element Object do usunięcia z elementu ArrayList. Wartość może być null.

Implementuje

Wyjątki

Element ArrayList jest tylko do odczytu.

-lub-

Element ArrayList ma stały rozmiar.

Przykłady

Poniższy przykład kodu pokazuje, jak usunąć elementy z elementu ArrayList.

C#
using System;
using System.Collections;
public class SamplesArrayList  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add( "The" );
      myAL.Add( "quick" );
      myAL.Add( "brown" );
      myAL.Add( "fox" );
      myAL.Add( "jumps" );
      myAL.Add( "over" );
      myAL.Add( "the" );
      myAL.Add( "lazy" );
      myAL.Add( "dog" );

      // Displays the ArrayList.
      Console.WriteLine( "The ArrayList initially contains the following:" );
      PrintValues( myAL );

      // Removes the element containing "lazy".
      myAL.Remove( "lazy" );

      // Displays the current state of the ArrayList.
      Console.WriteLine( "After removing \"lazy\":" );
      PrintValues( myAL );

      // Removes the element at index 5.
      myAL.RemoveAt( 5 );

      // Displays the current state of the ArrayList.
      Console.WriteLine( "After removing the element at index 5:" );
      PrintValues( myAL );

      // Removes three elements starting at index 4.
      myAL.RemoveRange( 4, 3 );

      // Displays the current state of the ArrayList.
      Console.WriteLine( "After removing three elements starting at index 4:" );
      PrintValues( myAL );
   }

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

The ArrayList initially contains the following:
   The   quick   brown   fox   jumps   over   the   lazy   dog
After removing "lazy":
   The   quick   brown   fox   jumps   over   the   dog
After removing the element at index 5:
   The   quick   brown   fox   jumps   the   dog
After removing three elements starting at index 4:
   The   quick   brown   fox
*/

Uwagi

Jeśli obiekt ArrayList nie zawiera określonego obiektu, ArrayList pozostaje niezmieniony. Wyjątek nie jest zgłaszany.

Ta metoda wykonuje wyszukiwanie liniowe; w związku z tym ta metoda jest operacją O(n) , gdzie n to Count.

Ta metoda określa równość przez wywołanie metody Object.Equals.

W kolekcjach ciągłych elementów, takich jak listy, elementy, które są zgodne z usuniętym elementem, przenoszą się w górę, aby zajmować opuszczone miejsce. Jeśli kolekcja jest indeksowana, indeksy przeniesionych elementów również są aktualizowane. To zachowanie nie dotyczy kolekcji, w których elementy są pod względem koncepcyjnym pogrupowane w przedziały, np. tablic skrótów.

Dotyczy

Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0

Zobacz też