Stack.CopyTo(Array, Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
public:
virtual void CopyTo(Array ^ array, int index);
public virtual void CopyTo (Array array, int index);
abstract member CopyTo : Array * int -> unit
override this.CopyTo : Array * int -> unit
Public Overridable Sub CopyTo (array As Array, index As Integer)
パラメーター
- index
- Int32
コピーの開始位置とする array
のインデックス (0 から始まる)。
実装
例外
array
が null
です。
index
が 0 未満です。
コピー元の Stack の型をコピー先の array
の型に自動的にキャストすることはできません。
例
次の例は、 を 1 次元配列にコピー Stack する方法を示しています。
using namespace System;
using namespace System::Collections;
void PrintValues( Array^ myArr, char mySeparator );
int main()
{
// Creates and initializes the source Stack.
Stack^ mySourceQ = gcnew Stack;
mySourceQ->Push( "barn" );
mySourceQ->Push( "the" );
mySourceQ->Push( "in" );
mySourceQ->Push( "cats" );
mySourceQ->Push( "napping" );
mySourceQ->Push( "three" );
// Creates and initializes the one-dimensional target Array.
Array^ myTargetArray = Array::CreateInstance( String::typeid, 15 );
myTargetArray->SetValue( "The", 0 );
myTargetArray->SetValue( "quick", 1 );
myTargetArray->SetValue( "brown", 2 );
myTargetArray->SetValue( "fox", 3 );
myTargetArray->SetValue( "jumps", 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 entire source Stack to the target Array, starting at index 6.
mySourceQ->CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source Stack to a new standard array.
array<Object^>^myStandardArray = mySourceQ->ToArray();
// Displays the values of the new standard array.
Console::WriteLine( "The new standard array contains the following:" );
PrintValues( myStandardArray, ' ' );
}
void PrintValues( Array^ myArr, char mySeparator )
{
IEnumerator^ myEnum = myArr->GetEnumerator();
while ( myEnum->MoveNext() )
{
Object^ myObj = safe_cast<Object^>(myEnum->Current);
Console::Write( "{0}{1}", mySeparator, myObj );
}
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
The new standard array contains the following:
three napping cats in the barn
*/
using System;
using System.Collections;
public class SamplesStack {
public static void Main() {
// Creates and initializes the source Stack.
Stack mySourceQ = new Stack();
mySourceQ.Push( "barn" );
mySourceQ.Push( "the" );
mySourceQ.Push( "in" );
mySourceQ.Push( "cats" );
mySourceQ.Push( "napping" );
mySourceQ.Push( "three" );
// Creates and initializes the one-dimensional target Array.
Array myTargetArray=Array.CreateInstance( typeof(string), 15 );
myTargetArray.SetValue( "The", 0 );
myTargetArray.SetValue( "quick", 1 );
myTargetArray.SetValue( "brown", 2 );
myTargetArray.SetValue( "fox", 3 );
myTargetArray.SetValue( "jumps", 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 entire source Stack to the target Array, starting at index 6.
mySourceQ.CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source Stack to a new standard array.
Object[] myStandardArray = mySourceQ.ToArray();
// Displays the values of the new standard array.
Console.WriteLine( "The new standard array contains the following:" );
PrintValues( myStandardArray, ' ' );
}
public static void PrintValues( Array myArr, char mySeparator ) {
foreach ( Object myObj in myArr ) {
Console.Write( "{0}{1}", mySeparator, myObj );
}
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
The new standard array contains the following:
three napping cats in the barn
*/
Imports System.Collections
Public Class SamplesStack
Public Shared Sub Main()
' Creates and initializes the source Stack.
Dim mySourceQ As New Stack()
mySourceQ.Push("barn")
mySourceQ.Push("the")
mySourceQ.Push("in")
mySourceQ.Push("cats")
mySourceQ.Push("napping")
mySourceQ.Push("three")
' Creates and initializes the one-dimensional target Array.
Dim myTargetArray As Array = Array.CreateInstance(GetType(String), 15)
myTargetArray.SetValue("The", 0)
myTargetArray.SetValue("quick", 1)
myTargetArray.SetValue("brown", 2)
myTargetArray.SetValue("fox", 3)
myTargetArray.SetValue("jumps", 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, " "c)
' Copies the entire source Stack to the target Array, starting
' at index 6.
mySourceQ.CopyTo(myTargetArray, 6)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source Stack to a new standard array.
Dim myStandardArray As Object() = mySourceQ.ToArray()
' Displays the values of the new standard array.
Console.WriteLine("The new standard array contains the following:")
PrintValues(myStandardArray, " "c)
End Sub
Overloads Public Shared Sub PrintValues(myArr As Array, _
mySeparator As Char)
Dim myObj As Object
For Each myObj In myArr
Console.Write("{0}{1}", mySeparator, myObj)
Next myObj
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
' The new standard array contains the following:
' three napping cats in the barn
注釈
要素は、 への連続した呼び出しによって返される要素の順序と同様に、最後の先入れ先出し (LIFO) の順序で配列に Popコピーされます。
このメソッドは 操作です O(n)
。ここで n
、 は Countです。
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET