Lire en anglais

Partager via


ArrayList.SetRange(Int32, ICollection) Méthode

Définition

Copie les éléments d’une collection par-dessus une plage d’éléments dans ArrayList.

C#
public virtual void SetRange (int index, System.Collections.ICollection c);

Paramètres

index
Int32

Index ArrayList de base zéro à partir duquel commencer la copie des éléments de c.

c
ICollection

ICollection dont les éléments doivent être copiés dans ArrayList. La collection elle-même ne peut pas avoir la valeur null, mais elle peut contenir des éléments qui ont la valeur null.

Exceptions

index est inférieur à zéro.

- ou -

index plus le nombre d’éléments dans c est supérieur à Count.

c a la valeur null.

ArrayList est en lecture seule.

Exemples

L’exemple de code suivant montre comment définir et obtenir une plage d’éléments dans le 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" );

      // Creates and initializes the source ICollection.
      Queue mySourceList = new Queue();
      mySourceList.Enqueue( "big" );
      mySourceList.Enqueue( "gray" );
      mySourceList.Enqueue( "wolf" );

      // Displays the values of five elements starting at index 0.
      ArrayList mySubAL = myAL.GetRange( 0, 5 );
      Console.WriteLine( "Index 0 through 4 contains:" );
      PrintValues( mySubAL, '\t' );

      // Replaces the values of five elements starting at index 1 with the values in the ICollection.
      myAL.SetRange( 1, mySourceList );

      // Displays the values of five elements starting at index 0.
      mySubAL = myAL.GetRange( 0, 5 );
      Console.WriteLine( "Index 0 through 4 now contains:" );
      PrintValues( mySubAL, '\t' );
   }

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


/*
This code produces the following output.

Index 0 through 4 contains:
        The     quick   brown   fox     jumps
Index 0 through 4 now contains:
        The     big     gray    wolf    jumps
*/

Remarques

ArrayList accepte null comme valeur valide et autorise les éléments en double.

L’ordre des éléments dans est ICollection conservé dans le ArrayList.

Cette méthode est une O(n) opération, où n est Count.

S’applique à

Produit Versions
.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

Voir aussi