List.AddRange メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

Public Sub AddRange ( _ collection As IEnumerable(Of T) _ )
Dim instance As List(Of T) Dim collection As IEnumerable(Of T) instance.AddRange(collection)
public void AddRange ( IEnumerable<T> collection )
public: void AddRange ( IEnumerable<T>^ collection )
public void AddRange ( IEnumerable<T> collection )
public function AddRange ( collection : IEnumerable<T> )

例外の種類 | 条件 |
---|---|
ArgumentNullException | collection が null 参照 (Visual Basic では Nothing) です。 |

新しい Count (現在の Count にコレクションのサイズを追加) が Capacity よりも大きくなると、内部配列を自動的に再割り当てして新しい要素を格納することにより List の容量が増加し、新しい要素を追加する前に既存の要素は新しい配列にコピーされます。
Capacity を増やさずに新しい要素を List に格納できる場合、このメソッドは O( n ) 操作になります。ここで、n は、追加する要素の数です。新しい要素を格納するために容量を増やす必要がある場合、このメソッドは O(n + m) 操作になります。ここで、n は追加する要素の数、m は Count です。

AddRange メソッドと、範囲に対して動作する、List クラスの他のさまざまなメソッドを使用したコード例を次に示します。文字列の配列が作成され、コンストラクタに渡されます。リストにその配列の要素が追加されます。リストを引数として、AddRange メソッドが呼び出されます。その結果、リストの現在の要素がそのリストの末尾に追加され、すべての要素が重複するようになります。
Imports System Imports System.Collections.Generic Public Class Example Public Shared Sub Main() Dim input() As String = { "Brachiosaurus", _ "Amargasaurus", _ "Mamenchisaurus" } Dim dinosaurs As New List(Of String)(input) Console.WriteLine(vbLf & "Capacity: {0}", dinosaurs.Capacity) Console.WriteLine() For Each dinosaur As String In dinosaurs Console.WriteLine(dinosaur) Next Console.WriteLine(vbLf & "AddRange(dinosaurs)") dinosaurs.AddRange(dinosaurs) Console.WriteLine() For Each dinosaur As String In dinosaurs Console.WriteLine(dinosaur) Next Console.WriteLine(vbLf & "RemoveRange(2, 2)") dinosaurs.RemoveRange(2, 2) Console.WriteLine() For Each dinosaur As String In dinosaurs Console.WriteLine(dinosaur) Next input = New String() { "Tyrannosaurus", _ "Deinonychus", _ "Velociraptor" } Console.WriteLine(vbLf & "InsertRange(3, input)") dinosaurs.InsertRange(3, input) Console.WriteLine() For Each dinosaur As String In dinosaurs Console.WriteLine(dinosaur) Next Console.WriteLine(vbLf & "output = dinosaurs.GetRange(2, 3).ToArray") Dim output() As String = dinosaurs.GetRange(2, 3).ToArray() Console.WriteLine() For Each dinosaur As String In output Console.WriteLine(dinosaur) Next End Sub End Class ' This code example produces the following output: ' 'Capacity: 3 ' 'Brachiosaurus 'Amargasaurus 'Mamenchisaurus ' 'AddRange(dinosaurs) ' 'Brachiosaurus 'Amargasaurus 'Mamenchisaurus 'Brachiosaurus 'Amargasaurus 'Mamenchisaurus ' 'RemoveRange(2, 2) ' 'Brachiosaurus 'Amargasaurus 'Amargasaurus 'Mamenchisaurus ' 'InsertRange(3, input) ' 'Brachiosaurus 'Amargasaurus 'Amargasaurus 'Tyrannosaurus 'Deinonychus 'Velociraptor 'Mamenchisaurus ' 'output = dinosaurs.GetRange(2, 3).ToArray ' 'Amargasaurus 'Tyrannosaurus 'Deinonychus
using System; using System.Collections.Generic; public class Example { public static void Main() { string[] input = { "Brachiosaurus", "Amargasaurus", "Mamenchisaurus" }; List<string> dinosaurs = new List<string>(input); Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity); Console.WriteLine(); foreach( string dinosaur in dinosaurs ) { Console.WriteLine(dinosaur); } Console.WriteLine("\nAddRange(dinosaurs)"); dinosaurs.AddRange(dinosaurs); Console.WriteLine(); foreach( string dinosaur in dinosaurs ) { Console.WriteLine(dinosaur); } Console.WriteLine("\nRemoveRange(2, 2)"); dinosaurs.RemoveRange(2, 2); Console.WriteLine(); foreach( string dinosaur in dinosaurs ) { Console.WriteLine(dinosaur); } input = new string[] { "Tyrannosaurus", "Deinonychus", "Velociraptor"}; Console.WriteLine("\nInsertRange(3, input)"); dinosaurs.InsertRange(3, input); Console.WriteLine(); foreach( string dinosaur in dinosaurs ) { Console.WriteLine(dinosaur); } Console.WriteLine("\noutput = dinosaurs.GetRange(2, 3).ToArray()"); string[] output = dinosaurs.GetRange(2, 3).ToArray(); Console.WriteLine(); foreach( string dinosaur in output ) { Console.WriteLine(dinosaur); } } } /* This code example produces the following output: Capacity: 3 Brachiosaurus Amargasaurus Mamenchisaurus AddRange(dinosaurs) Brachiosaurus Amargasaurus Mamenchisaurus Brachiosaurus Amargasaurus Mamenchisaurus RemoveRange(2, 2) Brachiosaurus Amargasaurus Amargasaurus Mamenchisaurus InsertRange(3, input) Brachiosaurus Amargasaurus Amargasaurus Tyrannosaurus Deinonychus Velociraptor Mamenchisaurus output = dinosaurs.GetRange(2, 3).ToArray() Amargasaurus Tyrannosaurus Deinonychus */
using namespace System; using namespace System::Collections::Generic; void main() { array<String^>^ input = { "Brachiosaurus", "Amargasaurus", "Mamenchisaurus" }; List<String^>^ dinosaurs = gcnew List<String^>((IEnumerable<String^>^) input); Console::WriteLine("\nCapacity: {0}", dinosaurs->Capacity); Console::WriteLine(); for each(String^ dinosaur in dinosaurs ) { Console::WriteLine(dinosaur); } Console::WriteLine("\nAddRange(dinosaurs)"); dinosaurs->AddRange(dinosaurs); Console::WriteLine(); for each(String^ dinosaur in dinosaurs ) { Console::WriteLine(dinosaur); } Console::WriteLine("\nRemoveRange(2, 2)"); dinosaurs->RemoveRange(2, 2); Console::WriteLine(); for each(String^ dinosaur in dinosaurs ) { Console::WriteLine(dinosaur); } input = gcnew array<String^> { "Tyrannosaurus", "Deinonychus", "Velociraptor"}; Console::WriteLine("\nInsertRange(3, (IEnumerable<String^>^) input)"); dinosaurs->InsertRange(3, (IEnumerable<String^>^) input); Console::WriteLine(); for each(String^ dinosaur in dinosaurs ) { Console::WriteLine(dinosaur); } Console::WriteLine("\noutput = dinosaurs->GetRange(2, 3)->ToArray()"); array<String^>^ output = dinosaurs->GetRange(2, 3)->ToArray(); Console::WriteLine(); for each(String^ dinosaur in output ) { Console::WriteLine(dinosaur); } } /* This code example produces the following output: Capacity: 3 Brachiosaurus Amargasaurus Mamenchisaurus AddRange(dinosaurs) Brachiosaurus Amargasaurus Mamenchisaurus Brachiosaurus Amargasaurus Mamenchisaurus RemoveRange(2, 2) Brachiosaurus Amargasaurus Amargasaurus Mamenchisaurus InsertRange(3, (IEnumerable<String^>^) input) Brachiosaurus Amargasaurus Amargasaurus Tyrannosaurus Deinonychus Velociraptor Mamenchisaurus output = dinosaurs->GetRange(2, 3)->ToArray() Amargasaurus Tyrannosaurus Deinonychus */

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


List ジェネリック クラス
List メンバ
System.Collections.Generic 名前空間
IEnumerable ジェネリック インターフェイス
Capacity
Count
List.Add メソッド
InsertRange
RemoveRange
GetRange
Weblioに収録されているすべての辞書からList.AddRange メソッドを検索する場合は、下記のリンクをクリックしてください。

- List.AddRange メソッドのページへのリンク