Cliquez pour évaluer et commenter
MSDN
MSDN Library
Développement .NET
.NET Framework 3.5
.NET Framework
Bibliothèque de classes ....
ArrayList, classe
Méthodes ArrayList
CopyTo, méthode
 CopyTo, méthode (Int32, Array, Int3...

  Passer à l'affichage pour faible bande passante
Cette page est spécifique à
Microsoft Visual Studio 2008/.NET Framework 3.5

D'autres versions sont également disponibles pour :
Bibliothèque de classes .NET Framework
ArrayList..::.CopyTo, méthode (Int32, Array, Int32, Int32)

Mise à jour : novembre 2007

Copie la plage d'éléments de ArrayList dans un Array compatible unidimensionnel en commençant à l'index spécifié du tableau cible.

Espace de noms :  System.Collections
Assembly :  mscorlib (dans mscorlib.dll)

Visual Basic (Déclaration)
Public Overridable Sub CopyTo ( _
    index As Integer, _
    array As Array, _
    arrayIndex As Integer, _
    count As Integer _
)
Visual Basic (Utilisation)
Dim instance As ArrayList
Dim index As Integer
Dim array As Array
Dim arrayIndex As Integer
Dim count As Integer

instance.CopyTo(index, array, arrayIndex, _
    count)
C#
public virtual void CopyTo(
    int index,
    Array array,
    int arrayIndex,
    int count
)
VisualC++
public:
virtual void CopyTo(
    int index, 
    Array^ array, 
    int arrayIndex, 
    int count
)
J#
public void CopyTo(
    int index,
    Array array,
    int arrayIndex,
    int count
)
JScript
public function CopyTo(
    index : int, 
    array : Array, 
    arrayIndex : int, 
    count : int
)

Paramètres

index
Type : System..::.Int32

Index de base zéro dans le ArrayList source, au niveau duquel commencer la copie.

array
Type : System..::.Array

Array unidimensionnel qui constitue la destination des éléments copiés à partir de ArrayList. Array doit avoir une indexation de base zéro.

arrayIndex
Type : System..::.Int32

Index de base zéro dans array au niveau duquel commencer la copie.

count
Type : System..::.Int32

Nombre d'éléments à copier.

ExceptionCondition
ArgumentNullException

array est nullNothingnullptrune référence null (Nothing en Visual Basic).

ArgumentOutOfRangeException

index est inférieur à zéro.

- ou -

arrayIndex est inférieur à zéro.

- ou -

count est inférieur à zéro.

ArgumentException

array est multidimensionnel.

- ou -

index est égal ou supérieur au Count du ArrayList source.

- ou -

arrayIndex est supérieur ou égal à la longueur de array.

- ou -

Le nombre d'éléments de index jusqu'à la fin du ArrayList source est supérieur à la quantité d'espace disponible entre arrayIndex et la fin du array de destination.

InvalidCastException

Le cast automatique du type du ArrayList source en type du array de destination est impossible.

Le type du tableau spécifié doit être compatible.

Cette méthode utilise Array..::.Copy pour copier les éléments.

Les éléments sont copiés dans Array dans l'ordre dans lequel l'énumérateur parcourt ArrayList.

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

L'exemple de code suivant montre comment copier un ArrayList dans un System..::.Array unidimensionnel.

Visual Basic
Imports System
Imports System.Collections

Public Class SamplesArrayList

    Public Shared Sub Main()

        ' Creates and initializes the source ArrayList.
        Dim mySourceList As New ArrayList()
        mySourceList.Add("three")
        mySourceList.Add("napping")
        mySourceList.Add("cats")
        mySourceList.Add("in")
        mySourceList.Add("the")
        mySourceList.Add("barn")

        ' Creates and initializes the one-dimensional target Array.
        Dim myTargetArray(14) As String
        myTargetArray(0) = "The"
        myTargetArray(1) = "quick"
        myTargetArray(2) = "brown"
        myTargetArray(3) = "fox"
        myTargetArray(4) = "jumped"
        myTargetArray(5) = "over"
        myTargetArray(6) = "the"
        myTargetArray(7) = "lazy"
        myTargetArray(8) = "dog"

        ' Displays the values of the target Array.
        Console.WriteLine("The target Array contains the following (before and after copying):")
        PrintValues(myTargetArray, " "c)

        ' Copies the second element from the source ArrayList to the target Array, starting at index 7.
        mySourceList.CopyTo(1, myTargetArray, 7, 1)

        ' Displays the values of the target Array.
        PrintValues(myTargetArray, " "c)

        ' Copies the entire source ArrayList to the target Array, starting at index 6.
        mySourceList.CopyTo(myTargetArray, 6)

        ' Displays the values of the target Array.
        PrintValues(myTargetArray, " "c)

        ' Copies the entire source ArrayList to the target Array, starting at index 0.
        mySourceList.CopyTo(myTargetArray)

        ' Displays the values of the target Array.
        PrintValues(myTargetArray, " "c)

    End Sub 'Main

    Public Shared Sub PrintValues(myArr() As String, mySeparator As Char)
        Dim i As Integer
        For i = 0 To myArr.Length - 1
            Console.Write("{0}{1}", mySeparator, myArr(i))
        Next i
        Console.WriteLine()
    End Sub 'PrintValues

End Class 'SamplesArrayList 


' This code produces the following output.
' 
' The target Array contains the following (before and after copying):
'  The quick brown fox jumped over the lazy dog
'  The quick brown fox jumped over the napping dog
'  The quick brown fox jumped over three napping cats in the barn
'  three napping cats in the barn three napping cats in the barn


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

   public static void Main()  {

      // Creates and initializes the source ArrayList.
      ArrayList mySourceList = new ArrayList();
      mySourceList.Add( "three" );
      mySourceList.Add( "napping" );
      mySourceList.Add( "cats" );
      mySourceList.Add( "in" );
      mySourceList.Add( "the" );
      mySourceList.Add( "barn" );

      // Creates and initializes the one-dimensional target Array.
      String[] myTargetArray = new String[15];
      myTargetArray[0] = "The";
      myTargetArray[1] = "quick";
      myTargetArray[2] = "brown";
      myTargetArray[3] = "fox";
      myTargetArray[4] = "jumped";
      myTargetArray[5] = "over";
      myTargetArray[6] = "the";
      myTargetArray[7] = "lazy";
      myTargetArray[8] = "dog";

      // Displays the values of the target Array.
      Console.WriteLine( "The target Array contains the following (before and after copying):" );
      PrintValues( myTargetArray, ' ' );

      // Copies the second element from the source ArrayList to the target Array, starting at index 7.
      mySourceList.CopyTo( 1, myTargetArray, 7, 1 );

      // Displays the values of the target Array.
      PrintValues( myTargetArray, ' ' );

      // Copies the entire source ArrayList to the target Array, starting at index 6.
      mySourceList.CopyTo( myTargetArray, 6 );

      // Displays the values of the target Array.
      PrintValues( myTargetArray, ' ' );

      // Copies the entire source ArrayList to the target Array, starting at index 0.
      mySourceList.CopyTo( myTargetArray );

      // Displays the values of the target Array.
      PrintValues( myTargetArray, ' ' );

   }

   public static void PrintValues( String[] myArr, char mySeparator )  {
      for ( int i = 0; i < myArr.Length; i++ )
         Console.Write( "{0}{1}", mySeparator, myArr[i] );
      Console.WriteLine();
   }

}


/* 
This code produces the following output.

The target Array contains the following (before and after copying):
 The quick brown fox jumped over the lazy dog
 The quick brown fox jumped over the napping dog
 The quick brown fox jumped over three napping cats in the barn
 three napping cats in the barn three napping cats in the barn

*/ 

VisualC++
using namespace System;
using namespace System::Collections;
void PrintValues( array<String^>^myArr, char mySeparator );
int main()
{

   // Creates and initializes the source ArrayList.
   ArrayList^ mySourceList = gcnew ArrayList;
   mySourceList->Add( "three" );
   mySourceList->Add( "napping" );
   mySourceList->Add( "cats" );
   mySourceList->Add( "in" );
   mySourceList->Add( "the" );
   mySourceList->Add( "barn" );

   // Creates and initializes the one-dimensional target Array.
   array<String^>^myTargetArray = gcnew array<String^>(15);
   myTargetArray[ 0 ] = "The";
   myTargetArray[ 1 ] = "quick";
   myTargetArray[ 2 ] = "brown";
   myTargetArray[ 3 ] = "fox";
   myTargetArray[ 4 ] = "jumped";
   myTargetArray[ 5 ] = "over";
   myTargetArray[ 6 ] = "the";
   myTargetArray[ 7 ] = "lazy";
   myTargetArray[ 8 ] = "dog";

   // Displays the values of the target Array.
   Console::WriteLine( "The target Array contains the following (before and after copying):" );
   PrintValues( myTargetArray, ' ' );

   // Copies the second element from the source ArrayList to the target Array, starting at index 7.
   mySourceList->CopyTo( 1, myTargetArray, 7, 1 );

   // Displays the values of the target Array.
   PrintValues( myTargetArray, ' ' );

   // Copies the entire source ArrayList to the target Array, starting at index 6.
   mySourceList->CopyTo( myTargetArray, 6 );

   // Displays the values of the target Array.
   PrintValues( myTargetArray, ' ' );

   // Copies the entire source ArrayList to the target Array, starting at index 0.
   mySourceList->CopyTo( myTargetArray );

   // Displays the values of the target Array.
   PrintValues( myTargetArray, ' ' );
}

void PrintValues( array<String^>^myArr, char mySeparator )
{
   for ( int i = 0; i < myArr->Length; i++ )
      Console::Write( "{0}{1}", mySeparator, myArr[ i ] );
   Console::WriteLine();
}

/* 
 This code produces the following output.

 The target Array contains the following (before and after copying):
  The quick brown fox jumped over the lazy dog
  The quick brown fox jumped over the napping dog
  The quick brown fox jumped over three napping cats in the barn
  three napping cats in the barn three napping cats in the barn

 */

J#
import System.*;
import System.Collections.*;

public class SamplesArrayList
{
    public static void main(String[] args)
    {
        // Creates and initializes the source ArrayList.
        ArrayList mySourceList = new ArrayList();

        mySourceList.Add("three");
        mySourceList.Add("napping");
        mySourceList.Add("cats");
        mySourceList.Add("in");
        mySourceList.Add("the");
        mySourceList.Add("barn");

        // Creates and initializes the one-dimensional target Array.
        String myTargetArray[] = new String[15];

        myTargetArray.set_Item(0, "The");
        myTargetArray.set_Item(1, "quick");
        myTargetArray.set_Item(2, "brown");
        myTargetArray.set_Item(3, "fox");
        myTargetArray.set_Item(4, "jumped");
        myTargetArray.set_Item(5, "over");
        myTargetArray.set_Item(6, "the");
        myTargetArray.set_Item(7, "lazy");
        myTargetArray.set_Item(8, "dog");

        // Displays the values of the target Array.
        Console.WriteLine("The target Array contains the following "
            + "(before and after copying):");
        PrintValues(myTargetArray, ' ');

        // Copies the second element from the source Array to the 
        // target ArrayList, starting at index 7.
        mySourceList.CopyTo(1, myTargetArray, 7, 1);

        // Displays the values of the target Array.
        PrintValues(myTargetArray, ' ');

        // Copies the entire source ArrayList to the target Array,
        // starting at index 6.
        mySourceList.CopyTo(myTargetArray, 6);

        // Displays the values of the target Array.
        PrintValues(myTargetArray, ' ');

        // Copies the entire source ArrayList to the target Array,
        // starting at index 0.
        mySourceList.CopyTo(myTargetArray);

        // Displays the values of the target Array.
        PrintValues(myTargetArray, ' ');
    } //main

    public static void PrintValues(String myArr[], char mySeparator)
    {
        for (int i = 0; i < myArr.length; i++) {
            Console.Write("{0}{1}", new Character(mySeparator), 
                myArr.get_Item(i));
        }
        Console.WriteLine();
    } //PrintValues
} //SamplesArrayList 

/* 
 This code produces the following output.

 The target Array contains the following (before and after copying):
  The quick brown fox jumped over the lazy dog
  The quick brown fox jumped over the napping dog
  The quick brown fox jumped over three napping cats in the barn
  three napping cats in the barn three napping cats in the barn

 */

JScript
import System;
import System.Collections;


// Creates and initializes the source ArrayList.
var mySourceList : ArrayList  = new ArrayList();
mySourceList.Add( "three" );
mySourceList.Add( "napping" );
mySourceList.Add( "cats" );
mySourceList.Add( "in" );
mySourceList.Add( "the" );
mySourceList.Add( "barn" );

// Creates and initializes the one-dimensional target Array.
var myTargetArray : System.Array = System.Array.CreateInstance( System.String, 15 );
myTargetArray.SetValue( "The", 0 );
myTargetArray.SetValue( "quick", 1 );
myTargetArray.SetValue( "brown", 2 );
myTargetArray.SetValue( "fox", 3 );
myTargetArray.SetValue( "jumped", 4 );
myTargetArray.SetValue( "over", 5 );
myTargetArray.SetValue( "the", 6 );
myTargetArray.SetValue( "lazy", 7 );
myTargetArray.SetValue( "dog", 8 );

// Displays the values of the target Array.
Console.WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );

// Copies the second element from the source ArrayList to the target Array, starting at index 7.
mySourceList.CopyTo( 1, myTargetArray, 7, 1 );

// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );

// Copies the entire source ArrayList to the target Array, starting at index 6.
mySourceList.CopyTo( myTargetArray, 6 );

// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );

// Copies the entire source ArrayList to the target Array, starting at index 0.
mySourceList.CopyTo( myTargetArray );

// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );


function PrintValues( myArr : System.Array , mySeparator : char  )  {
   var myEnumerator : System.Collections.IEnumerator = myArr.GetEnumerator();
   var i : int= 0;
   var cols : int = myArr.GetLength( myArr.Rank - 1 );
   while ( myEnumerator.MoveNext() )  {
      if ( i < cols )  {
         i++;
      } else  {
         Console.WriteLine();
         i = 1;
      }
      Console.Write( "{0}{1}", mySeparator, myEnumerator.Current );
   }
   Console.WriteLine();
}
 /* 
 This code produces the following output.

 The target Array contains the following (before and after copying):
  The quick brown fox jumped over the lazy dog      
  The quick brown fox jumped over the napping dog      
  The quick brown fox jumped over three napping cats in the barn   
  three napping cats in the barn three napping cats in the barn
 */ 

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 2.0, 1.0
Contenu de la communauté   Qu'est-ce que le Contenu de la communauté ?
Ajouter du contenu RSS  Annotations
Processing
© 2009 Microsoft Corporation. Tous droits réservés. Conditions d'utilisation  |  Marques  |  Confidentialité
Page view tracker