ArrayList.ToArray Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zkopíruje prvky do ArrayList nového pole.
Přetížení
ToArray() | |
ToArray(Type) |
Zkopíruje elementy ArrayList do nového pole zadaného typu elementu. |
ToArray()
- Zdroj:
- ArrayList.cs
- Zdroj:
- ArrayList.cs
- Zdroj:
- ArrayList.cs
public:
virtual cli::array <System::Object ^> ^ ToArray();
public virtual object[] ToArray ();
public virtual object?[] ToArray ();
abstract member ToArray : unit -> obj[]
override this.ToArray : unit -> obj[]
Public Overridable Function ToArray () As Object()
Návraty
Pole Object obsahující kopie prvků objektu ArrayList.
Poznámky
Elementy se zkopírují pomocí Array.Copy, což je O(n)
operace, kde n
je Count.
Platí pro
ToArray(Type)
- Zdroj:
- ArrayList.cs
- Zdroj:
- ArrayList.cs
- Zdroj:
- ArrayList.cs
Zkopíruje elementy ArrayList do nového pole zadaného typu elementu.
public:
virtual Array ^ ToArray(Type ^ type);
public virtual Array ToArray (Type type);
abstract member ToArray : Type -> Array
override this.ToArray : Type -> Array
Public Overridable Function ToArray (type As Type) As Array
Parametry
Návraty
Pole zadaného typu elementu obsahující kopie prvků objektu ArrayList.
Výjimky
type
je null
.
Typ zdroje ArrayList nelze automaticky přetypovat na zadaný typ.
Příklady
Následující příklad kopírování ukazuje, jak zkopírovat prvky do ArrayList pole řetězců.
using namespace System;
using namespace System::Collections;
void PrintIndexAndValues( ArrayList^ myList );
void PrintIndexAndValues( array<String^>^myArr );
int main()
{
// Creates and initializes a new ArrayList.
ArrayList^ myAL = gcnew 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 values of the ArrayList.
Console::WriteLine( "The ArrayList contains the following values:" );
PrintIndexAndValues( myAL );
// Copies the elements of the ArrayList to a string array.
array<String^>^myArr = reinterpret_cast<array<String^>^>(myAL->ToArray( String::typeid ));
// Displays the contents of the string array.
Console::WriteLine( "The string array contains the following values:" );
PrintIndexAndValues( myArr );
}
void PrintIndexAndValues( ArrayList^ myList )
{
int i = 0;
IEnumerator^ myEnum = myList->GetEnumerator();
while ( myEnum->MoveNext() )
{
Object^ o = safe_cast<Object^>(myEnum->Current);
Console::WriteLine( "\t[{0}]:\t{1}", i++, o );
}
Console::WriteLine();
}
void PrintIndexAndValues( array<String^>^myArr )
{
for ( int i = 0; i < myArr->Length; i++ )
Console::WriteLine( "\t[{0}]:\t{1}", i, myArr[ i ] );
Console::WriteLine();
}
/*
This code produces the following output.
The ArrayList contains the following values:
[0]: The
[1]: quick
[2]: brown
[3]: fox
[4]: jumps
[5]: over
[6]: the
[7]: lazy
[8]: dog
The string array contains the following values:
[0]: The
[1]: quick
[2]: brown
[3]: fox
[4]: jumps
[5]: over
[6]: the
[7]: lazy
[8]: dog
*/
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 values of the ArrayList.
Console.WriteLine( "The ArrayList contains the following values:" );
PrintIndexAndValues( myAL );
// Copies the elements of the ArrayList to a string array.
String[] myArr = (String[]) myAL.ToArray( typeof( string ) );
// Displays the contents of the string array.
Console.WriteLine( "The string array contains the following values:" );
PrintIndexAndValues( myArr );
}
public static void PrintIndexAndValues( ArrayList myList ) {
int i = 0;
foreach ( Object o in myList )
Console.WriteLine( "\t[{0}]:\t{1}", i++, o );
Console.WriteLine();
}
public static void PrintIndexAndValues( String[] myArr ) {
for ( int i = 0; i < myArr.Length; i++ )
Console.WriteLine( "\t[{0}]:\t{1}", i, myArr[i] );
Console.WriteLine();
}
}
/*
This code produces the following output.
The ArrayList contains the following values:
[0]: The
[1]: quick
[2]: brown
[3]: fox
[4]: jumps
[5]: over
[6]: the
[7]: lazy
[8]: dog
The string array contains the following values:
[0]: The
[1]: quick
[2]: brown
[3]: fox
[4]: jumps
[5]: over
[6]: the
[7]: lazy
[8]: dog
*/
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes a new ArrayList.
Dim myAL As 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 values of the ArrayList.
Console.WriteLine("The ArrayList contains the following values:")
PrintIndexAndValues(myAL)
' Copies the elements of the ArrayList to a string array.
Dim myArr As String() = CType(myAL.ToArray(GetType(String)), String())
' Displays the contents of the string array.
Console.WriteLine("The string array contains the following values:")
PrintIndexAndValues(myArr)
End Sub
Overloads Public Shared Sub PrintIndexAndValues(myList As ArrayList)
Dim i As Integer = 0
Dim o As [Object]
For Each o In myList
Console.WriteLine(" [{0}]: {1}", i, o)
i = i + 1
Next o
Console.WriteLine()
End Sub
Overloads Public Shared Sub PrintIndexAndValues(myArr() As String)
Dim i As Integer
For i = 0 To myArr.Length - 1
Console.WriteLine(" [{0}]: {1}", i, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'The ArrayList contains the following values:
' [0]: The
' [1]: quick
' [2]: brown
' [3]: fox
' [4]: jumps
' [5]: over
' [6]: the
' [7]: lazy
' [8]: dog
'
'The string array contains the following values:
' [0]: The
' [1]: quick
' [2]: brown
' [3]: fox
' [4]: jumps
' [5]: over
' [6]: the
' [7]: lazy
' [8]: dog
Poznámky
Všechny objekty v objektu ArrayList budou přetypovány na hodnotu zadanou Type v parametru type
.
Elementy se zkopírují pomocí Array.Copy, což je O(n)
operace, kde n
je Count.