SortedList.CopyTo(Array, Int32) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
SortedList Menyalin elemen ke objek satu dimensiArray, dimulai dari indeks yang ditentukan dalam array.
public:
virtual void CopyTo(Array ^ array, int arrayIndex);
public virtual void CopyTo (Array array, int arrayIndex);
abstract member CopyTo : Array * int -> unit
override this.CopyTo : Array * int -> unit
Public Overridable Sub CopyTo (array As Array, arrayIndex As Integer)
Parameter
- array
- Array
Objek satu dimensi Array yang merupakan tujuan objek yang disalin DictionaryEntry dari SortedList. Array harus memiliki pengindeksan berbasis nol.
- arrayIndex
- Int32
Indeks berbasis nol tempat array
penyalinan dimulai.
Penerapan
Pengecualian
array
adalah null
.
arrayIndex
kurang dari nol.
array
bersifat multidmensional.
-atau-
Jumlah elemen dalam objek sumber SortedList lebih besar dari ruang yang tersedia dari arrayIndex
ke akhir tujuan array
.
Jenis sumber SortedList tidak dapat dilemparkan secara otomatis ke jenis tujuan array
.
Contoh
Contoh kode berikut menunjukkan cara menyalin nilai dalam SortedList objek ke dalam objek satu dimensi Array .
using namespace System;
using namespace System::Collections;
void PrintValues( array<DictionaryEntry>^ myArr, Char mySeparator );
int main()
{
// Creates and initializes the source SortedList.
SortedList^ mySourceList = gcnew SortedList;
mySourceList->Add( 2, "cats" );
mySourceList->Add( 3, "in" );
mySourceList->Add( 1, "napping" );
mySourceList->Add( 4, "the" );
mySourceList->Add( 0, "three" );
mySourceList->Add( 5, "barn" );
// Creates and initializes the one-dimensional target Array.
array<String^>^tempArray = {"The","quick","brown","fox","jumps","over","the","lazy","dog"};
array<DictionaryEntry>^myTargetArray = gcnew array<DictionaryEntry>(15);
int i = 0;
IEnumerator^ myEnum = tempArray->GetEnumerator();
while ( myEnum->MoveNext() )
{
String^ s = safe_cast<String^>(myEnum->Current);
myTargetArray[ i ].Key = i;
myTargetArray[ i ].Value = s;
i++;
}
// Displays the values of the target Array.
Console::WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );
// Copies the entire source SortedList to the target SortedList, starting at index 6.
mySourceList->CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
}
void PrintValues( array<DictionaryEntry>^ myArr, Char mySeparator )
{
for ( int i = 0; i < myArr->Length; i++ )
Console::Write( "{0}{1}", mySeparator, myArr[ i ].Value );
Console::WriteLine();
}
/*
This code produces the following output.
The target Array contains the following (before and after copying):
The quick brown fox jumps over the lazy dog
The quick brown fox jumps over three napping cats in the barn
*/
using System;
using System.Collections;
public class SamplesSortedList {
public static void Main() {
// Creates and initializes the source SortedList.
SortedList mySourceList = new SortedList();
mySourceList.Add( 2, "cats" );
mySourceList.Add( 3, "in" );
mySourceList.Add( 1, "napping" );
mySourceList.Add( 4, "the" );
mySourceList.Add( 0, "three" );
mySourceList.Add( 5, "barn" );
// Creates and initializes the one-dimensional target Array.
String[] tempArray = new String[] { "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog" };
DictionaryEntry[] myTargetArray = new DictionaryEntry[15];
int i = 0;
foreach ( string s in tempArray ) {
myTargetArray[i].Key = i;
myTargetArray[i].Value = s;
i++;
}
// Displays the values of the target Array.
Console.WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );
// Copies the entire source SortedList to the target SortedList, starting at index 6.
mySourceList.CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
}
public static void PrintValues( DictionaryEntry[] myArr, char mySeparator ) {
for ( int i = 0; i < myArr.Length; i++ )
Console.Write( "{0}{1}", mySeparator, myArr[i].Value );
Console.WriteLine();
}
}
/*
This code produces the following output.
The target Array contains the following (before and after copying):
The quick brown fox jumps over the lazy dog
The quick brown fox jumps over three napping cats in the barn
*/
Imports System.Collections
Public Class SamplesSortedList
Public Shared Sub Main()
' Creates and initializes the source SortedList.
Dim mySourceList As New SortedList()
mySourceList.Add(2, "cats")
mySourceList.Add(3, "in")
mySourceList.Add(1, "napping")
mySourceList.Add(4, "the")
mySourceList.Add(0, "three")
mySourceList.Add(5, "barn")
' Creates and initializes the one-dimensional target Array.
Dim tempArray() As String = {"The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"}
Dim myTargetArray(14) As DictionaryEntry
Dim i As Integer = 0
Dim s As String
For Each s In tempArray
myTargetArray(i).Key = i
myTargetArray(i).Value = s
i += 1
Next s
' Displays the values of the target Array.
Console.WriteLine("The target Array contains the following (before and after copying):")
PrintValues(myTargetArray, " "c)
' Copies the entire source SortedList to the target SortedList, starting at index 6.
mySourceList.CopyTo(myTargetArray, 6)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
End Sub
Public Shared Sub PrintValues(myArr() As DictionaryEntry, mySeparator As Char)
Dim i As Integer
For i = 0 To myArr.Length - 1
Console.Write("{0}{1}", mySeparator, myArr(i).Value)
Next i
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'The target Array contains the following (before and after copying):
' The quick brown fox jumps over the lazy dog
' The quick brown fox jumps over three napping cats in the barn
Keterangan
Pasangan kunci/nilai disalin ke Array objek dalam urutan yang sama di mana enumerator melakukan iterasi melalui SortedList objek.
Untuk menyalin hanya kunci di SortedList, gunakan SortedList.Keys.CopyTo
.
Untuk menyalin hanya nilai dalam SortedList, gunakan SortedList.Values.CopyTo
.
Metode ini adalah O(n)
operasi, di mana n
adalah Count.