NameValueCollection クラス
アセンブリ: System (system.dll 内)


このコレクションは NameObjectCollectionBase クラスに基づいています。ただし、NameObjectCollectionBase とは異なり、このクラスには 1 つのキーに複数の文字列値を格納します。
このクラスは、ヘッダー、クエリ文字列、およびフォーム データに使用できます。
NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection の既定の初期量はゼロです。NameValueCollection に要素を追加すると、必要に応じて、再割り当てを行うことによって容量が自動的に増加します。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。
.NET Framework Version 1.0 の場合、このクラスはカルチャに依存した文字列比較を使用します。ただし、.NET Framework Version 1.1 以降の場合、このクラスは文字列を比較するときに CultureInfo.InvariantCulture を使用します。カルチャが比較と並べ替えに与える影響の詳細については、「固有カルチャのデータの比較と並べ替え固有カルチャのデータの比較と並べ替え」および「カルチャを認識しない文字列操作の実行」を参照してください。
キーまたは値として null 参照 (Visual Basic では Nothing) を使用できます。
![]() |
---|
Get メソッドでは、指定したキーが見つからないために返される null 参照 (Visual Basic では Nothing) と、キーに関連付けられている値が null 参照 (Visual Basic では Nothing) であるために返される null 参照 (Visual Basic では Nothing) とが区別されません。 |

' The following code example demonstrates several of the properties and methods of ListDictionary. Imports System Imports System.Collections Imports System.Collections.Specialized Public Class SamplesNameValueCollection Public Shared Sub Main() ' Creates and initializes a new NameValueCollection. Dim myCol As New NameValueCollection() myCol.Add("red", "rojo") myCol.Add("green", "verde") myCol.Add("blue", "azul") myCol.Add("red", "rouge") ' Displays the values in the NameValueCollection in two different ways. Console.WriteLine("Displays the elements using the AllKeys property and the Item (indexer) property:") PrintKeysAndValues(myCol) Console.WriteLine("Displays the elements using GetKey and Get:") PrintKeysAndValues2(myCol) ' Gets a value either by index or by key. Console.WriteLine("Index 1 contains the value {0}.", myCol(1)) Console.WriteLine("Key ""red"" has the value {0}.", myCol("red")) Console.WriteLine() ' Copies the values to a string array and displays the string array. Dim myStrArr(myCol.Count) As String myCol.CopyTo(myStrArr, 0) Console.WriteLine("The string array contains:") Dim s As String For Each s In myStrArr Console.WriteLine(" {0}", s) Next s Console.WriteLine() ' Searches for a key and deletes it. myCol.Remove("green") Console.WriteLine("The collection contains the following elements after removing ""green"":") PrintKeysAndValues(myCol) ' Clears the entire collection. myCol.Clear() Console.WriteLine("The collection contains the following elements after it is cleared:") PrintKeysAndValues(myCol) End Sub 'Main Public Shared Sub PrintKeysAndValues(myCol As NameValueCollection) Dim myEnumerator As IEnumerator = myCol.GetEnumerator() Console.WriteLine(" KEY VALUE") Dim s As String For Each s In myCol.AllKeys Console.WriteLine(" {0,-10} {1}", s, myCol(s)) Next s Console.WriteLine() End Sub 'PrintKeysAndValues Public Shared Sub PrintKeysAndValues2(myCol As NameValueCollection) Console.WriteLine(" [INDEX] KEY VALUE") Dim i As Integer For i = 0 To myCol.Count - 1 Console.WriteLine(" [{0}] {1,-10} {2}", i, myCol.GetKey(i), myCol.Get(i)) Next i Console.WriteLine() End Sub 'PrintKeysAndValues2 End Class 'SamplesNameValueCollection 'This code produces the following output. ' 'Displays the elements using the AllKeys property and the Item (indexer) property: ' KEY VALUE ' red rojo,rouge ' green verde ' blue azul ' 'Displays the elements using GetKey and Get: ' [INDEX] KEY VALUE ' [0] red rojo,rouge ' [1] green verde ' [2] blue azul ' 'Index 1 contains the value verde. 'Key "red" has the value rojo,rouge. ' 'The string array contains: ' red ' green ' blue ' ' 'The collection contains the following elements after removing "green": ' KEY VALUE ' red rojo,rouge ' blue azul ' 'The collection contains the following elements after it is cleared: ' KEY VALUE ' '
using System; using System.Collections; using System.Collections.Specialized; public class SamplesNameValueCollection { public static void Main() { // Creates and initializes a new NameValueCollection. NameValueCollection myCol = new NameValueCollection(); myCol.Add( "red", "rojo" ); myCol.Add( "green", "verde" ); myCol.Add( "blue", "azul" ); myCol.Add( "red", "rouge" ); // Displays the values in the NameValueCollection in two different ways. Console.WriteLine( "Displays the elements using the AllKeys property and the Item (indexer) property:" ); PrintKeysAndValues( myCol ); Console.WriteLine( "Displays the elements using GetKey and Get:" ); PrintKeysAndValues2( myCol ); // Gets a value either by index or by key. Console.WriteLine( "Index 1 contains the value {0}.", myCol[1] ); Console.WriteLine( "Key \"red\" has the value {0}.", myCol["red"] ); Console.WriteLine(); // Copies the values to a string array and displays the string array. String[] myStrArr = new String[myCol.Count]; myCol.CopyTo( myStrArr, 0 ); Console.WriteLine( "The string array contains:" ); foreach ( String s in myStrArr ) Console.WriteLine( " {0}", s ); Console.WriteLine(); // Searches for a key and deletes it. myCol.Remove( "green" ); Console.WriteLine( "The collection contains the following elements after removing \"green\":" ); PrintKeysAndValues( myCol ); // Clears the entire collection. myCol.Clear(); Console.WriteLine( "The collection contains the following elements after it is cleared:" ); PrintKeysAndValues( myCol ); } public static void PrintKeysAndValues( NameValueCollection myCol ) { IEnumerator myEnumerator = myCol.GetEnumerator(); Console.WriteLine( " KEY VALUE" ); foreach ( String s in myCol.AllKeys ) Console.WriteLine( " {0,-10} {1}", s, myCol[s] ); Console.WriteLine(); } public static void PrintKeysAndValues2( NameValueCollection myCol ) { Console.WriteLine( " [INDEX] KEY VALUE" ); for ( int i = 0; i < myCol.Count; i++ ) Console.WriteLine( " [{0}] {1,-10} {2}", i, myCol.GetKey(i), myCol.Get(i) ); Console.WriteLine(); } } /* This code produces the following output. Displays the elements using the AllKeys property and the Item (indexer) property: KEY VALUE red rojo,rouge green verde blue azul Displays the elements using GetKey and Get: [INDEX] KEY VALUE [0] red rojo,rouge [1] green verde [2] blue azul Index 1 contains the value verde. Key "red" has the value rojo,rouge. The string array contains: rojo,rouge verde azul The collection contains the following elements after removing "green": KEY VALUE red rojo,rouge blue azul The collection contains the following elements after it is cleared: KEY VALUE */
#using <System.dll> using namespace System; using namespace System::Collections; using namespace System::Collections::Specialized; void PrintKeysAndValues( NameValueCollection^ myCol ); void PrintKeysAndValues2( NameValueCollection^ myCol ); int main() { // Creates and initializes a new NameValueCollection. NameValueCollection^ myCol = gcnew NameValueCollection; myCol->Add( "red", "rojo" ); myCol->Add( "green", "verde" ); myCol->Add( "blue", "azul" ); myCol->Add( "red", "rouge" ); // Displays the values in the NameValueCollection in two different ways. Console::WriteLine( "Displays the elements using the AllKeys property and the Item (indexer) property:" ); PrintKeysAndValues( myCol ); Console::WriteLine( "Displays the elements using GetKey and Get:" ); PrintKeysAndValues2( myCol ); // Gets a value either by index or by key. Console::WriteLine( "Index 1 contains the value {0}.", myCol[ 1 ] ); Console::WriteLine( "Key \"red\" has the value {0}.", myCol[ "red" ] ); Console::WriteLine(); // Copies the values to a string array and displays the string array. array<String^>^myStrArr = gcnew array<String^>(myCol->Count); myCol->CopyTo( myStrArr, 0 ); Console::WriteLine( "The string array contains:" ); for each ( String^ s in myStrArr ) Console::WriteLine( " {0}", s ); Console::WriteLine(); // Searches for a key and deletes it. myCol->Remove( "green" ); Console::WriteLine( "The collection contains the following elements after removing \"green\":" ); PrintKeysAndValues( myCol ); // Clears the entire collection. myCol->Clear(); Console::WriteLine( "The collection contains the following elements after it is cleared:" ); PrintKeysAndValues( myCol ); } void PrintKeysAndValues( NameValueCollection^ myCol ) { Console::WriteLine( " KEY VALUE" ); for each ( String^ s in myCol->AllKeys ) Console::WriteLine( " {0,-10} {1}", s, myCol[s] ); Console::WriteLine(); } void PrintKeysAndValues2( NameValueCollection^ myCol ) { Console::WriteLine( " [INDEX] KEY VALUE" ); for ( int i = 0; i < myCol->Count; i++ ) Console::WriteLine( " [{0}] {1,-10} {2}", i, myCol->GetKey( i ), myCol->Get( i ) ); Console::WriteLine(); } /* This code produces the following output. Displays the elements using the AllKeys property and the Item (indexer) property: KEY VALUE red rojo,rouge green verde blue azul Displays the elements using GetKey and Get: [INDEX] KEY VALUE [0] red rojo,rouge [1] green verde [2] blue azul Index 1 contains the value verde. Key "red" has the value rojo,rouge. The string array contains: rojo,rouge verde azul The collection contains the following elements after removing "green": KEY VALUE red rojo,rouge blue azul The collection contains the following elements after it is cleared: KEY VALUE */
import System.*; import System.Collections.*; import System.Collections.Specialized.*; public class SamplesNameValueCollection { public static void main(String[] args) { // Creates and initializes a new NameValueCollection. NameValueCollection myCol = new NameValueCollection(); myCol.Add("red", "rojo"); myCol.Add("green", "verde"); myCol.Add("blue", "azul"); myCol.Add("red", "rouge"); // Displays the values in the NameValueCollection in two different ways. Console.WriteLine("Displays the elements using the AllKeys property" + " and the Item (indexer) property:"); PrintKeysAndValues(myCol); Console.WriteLine("Displays the elements using GetKey and Get:"); PrintKeysAndValues2(myCol); // Gets a value either by index or by key. Console.WriteLine("Index 1 contains the value {0}.", myCol.get_Item(1)); Console.WriteLine("Key \"red\" has the value {0}.", myCol.get_Item("red")); Console.WriteLine(); // Copies the values to a string array and displays the string array. String myStrArr[] = new String[myCol.get_Count()]; myCol.CopyTo(myStrArr, 0); Console.WriteLine("The string array contains:"); for (int iCtr = 0; iCtr < myStrArr.get_Length(); iCtr++) { String s = myStrArr[iCtr]; Console.WriteLine(" {0}", s); } Console.WriteLine(); // Searches for a key and deletes it. myCol.Remove("green"); Console.WriteLine("The collection contains the following elements " + "after removing \"green\":"); PrintKeysAndValues(myCol); // Clears the entire collection. myCol.Clear(); Console.WriteLine("The collection contains the following elements " + "after it is cleared:"); PrintKeysAndValues(myCol); } //main public static void PrintKeysAndValues(NameValueCollection myCol) { IEnumerator myEnumerator = myCol.GetEnumerator(); Console.WriteLine(" KEY VALUE"); for (int iCtr = 0; iCtr < myCol.get_Count(); iCtr++) { String s = myCol.get_AllKeys()[iCtr]; Console.WriteLine(" {0,-10} {1}", s, myCol.get_Item(s)); } Console.WriteLine(); } //PrintKeysAndValues public static void PrintKeysAndValues2(NameValueCollection myCol) { Console.WriteLine(" [INDEX] KEY VALUE"); for (int i = 0; i < myCol.get_Count(); i++) { Console.WriteLine(" [{0}] {1,-10} {2}", System.Convert.ToString(i), System.Convert.ToString( myCol.GetKey(i)), System.Convert.ToString(myCol.Get(i))); } Console.WriteLine(); } //PrintKeysAndValues2 } //SamplesNameValueCollection /* This code produces the following output. Displays the elements using the AllKeys property and the Item (indexer) property: KEY VALUE red rojo,rouge green verde blue azul Displays the elements using GetKey and Get: [INDEX] KEY VALUE [0] red rojo,rouge [1] green verde [2] blue azul Index 1 contains the value verde. Key "red" has the value rojo,rouge. The string array contains: rojo,rouge verde azul The collection contains the following elements after removing "green": KEY VALUE red rojo,rouge blue azul The collection contains the following elements after it is cleared: KEY VALUE */

System.Collections.Specialized.NameObjectCollectionBase
System.Collections.Specialized.NameValueCollection
System.Net.WebHeaderCollection
System.Web.HttpClientCertificate

この型の public static (Visual Basic では Shared) メンバは、スレッド セーフです。すべてのインスタンス メンバがスレッド セーフになるかどうかは保証されていません。
この実装は、NameValueCollection 用の同期された (スレッド セーフな) ラッパーは提供しませんが、派生クラスでは、NameObjectCollectionBase クラスの SyncRoot プロパティを使用して、同期した NameValueCollection を独自に作成できます。
コレクションの列挙処理は、本質的にはスレッド セーフな処理ではありません。コレクションが同期されている場合でも、他のスレッドがそのコレクションを変更する可能性はあり、そのような状況が発生すると列挙子は例外をスローします。列挙処理を確実にスレッド セーフに行うには、列挙中にコレクションをロックするか、他のスレッドによって行われた変更によってスローされる例外をキャッチします。

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


NameValueCollection コンストラクタ ()
アセンブリ: System (system.dll 内)


NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


NameValueCollection コンストラクタ (Int32)
アセンブリ: System (system.dll 内)



NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。

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


NameValueCollection コンストラクタ (NameValueCollection)
アセンブリ: System (system.dll 内)



NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。
新しい NameValueCollection の要素は、ソース NameValueCollection と同じ順序で並べ替えられます。

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


NameValueCollection コンストラクタ (Int32, IHashCodeProvider, IComparer)
メモ : このコンストラクタは、互換性のために残されています。
空で、指定した初期量を備え、指定したハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 名前空間: System.Collections.Specializedアセンブリ: System (system.dll 内)

<ObsoleteAttribute("Please use NameValueCollection(Int32, IEqualityComparer) instead.")> _ Public Sub New ( _ capacity As Integer, _ hashProvider As IHashCodeProvider, _ comparer As IComparer _ )
Dim capacity As Integer Dim hashProvider As IHashCodeProvider Dim comparer As IComparer Dim instance As New NameValueCollection(capacity, hashProvider, comparer)
[ObsoleteAttribute("Please use NameValueCollection(Int32, IEqualityComparer) instead.")] public NameValueCollection ( int capacity, IHashCodeProvider hashProvider, IComparer comparer )
[ObsoleteAttribute(L"Please use NameValueCollection(Int32, IEqualityComparer) instead.")] public: NameValueCollection ( int capacity, IHashCodeProvider^ hashProvider, IComparer^ comparer )
/** @attribute ObsoleteAttribute("Please use NameValueCollection(Int32, IEqualityComparer) instead.") */ public NameValueCollection ( int capacity, IHashCodeProvider hashProvider, IComparer comparer )
ObsoleteAttribute("Please use NameValueCollection(Int32, IEqualityComparer) instead.") public function NameValueCollection ( capacity : int, hashProvider : IHashCodeProvider, comparer : IComparer )


NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。

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

サポート対象 : 1.0、1.1
2.0 では、互換性のために残されています (コンパイル時に警告)
.NET Compact Framework
サポート対象 : 1.0
2.0 では、互換性のために残されています (コンパイル時に警告)

NameValueCollection コンストラクタ (IHashCodeProvider, IComparer)
メモ : このコンストラクタは、互換性のために残されています。
空で、既定の初期量を備え、指定したハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 名前空間: System.Collections.Specializedアセンブリ: System (system.dll 内)

<ObsoleteAttribute("Please use NameValueCollection(IEqualityComparer) instead.")> _ Public Sub New ( _ hashProvider As IHashCodeProvider, _ comparer As IComparer _ )
Dim hashProvider As IHashCodeProvider Dim comparer As IComparer Dim instance As New NameValueCollection(hashProvider, comparer)
[ObsoleteAttribute("Please use NameValueCollection(IEqualityComparer) instead.")] public NameValueCollection ( IHashCodeProvider hashProvider, IComparer comparer )
[ObsoleteAttribute(L"Please use NameValueCollection(IEqualityComparer) instead.")] public: NameValueCollection ( IHashCodeProvider^ hashProvider, IComparer^ comparer )
/** @attribute ObsoleteAttribute("Please use NameValueCollection(IEqualityComparer) instead.") */ public NameValueCollection ( IHashCodeProvider hashProvider, IComparer comparer )
ObsoleteAttribute("Please use NameValueCollection(IEqualityComparer) instead.") public function NameValueCollection ( hashProvider : IHashCodeProvider, comparer : IComparer )

NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。

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

サポート対象 : 1.0、1.1
2.0 では、互換性のために残されています (コンパイル時に警告)
.NET Compact Framework
サポート対象 : 1.0
2.0 では、互換性のために残されています (コンパイル時に警告)

NameValueCollection コンストラクタ (SerializationInfo, StreamingContext)
アセンブリ: System (system.dll 内)

Dim info As SerializationInfo Dim context As StreamingContext Dim instance As New NameValueCollection(info, context)


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


NameValueCollection コンストラクタ (Int32, NameValueCollection)
アセンブリ: System (system.dll 内)

Dim capacity As Integer Dim col As NameValueCollection Dim instance As New NameValueCollection(capacity, col)


NameValueCollection の容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。既定のハッシュ コード プロバイダは CaseInsensitiveHashCodeProvider です。
比較演算子は 2 つのキーが等しいかどうかを判断します。既定の比較演算子は CaseInsensitiveComparer です。
このコンストラクタは O(n) 操作です。ここで、n は capacity です。col の要素数が capacity を超えている場合、このコンストラクタは O(n + m) 操作になります。ここで、n は capacity で、m は col の要素数です。

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


NameValueCollection コンストラクタ (IEqualityComparer)
アセンブリ: System (system.dll 内)


NameValueCollection オブジェクトの容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
IEqualityComparer オブジェクトは、比較演算子とハッシュ コード プロバイダを組み合わせます。ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。比較演算子は 2 つのキーが等しいかどうかを判断します。

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


NameValueCollection コンストラクタ (Int32, IEqualityComparer)
アセンブリ: System (system.dll 内)

Dim capacity As Integer Dim equalityComparer As IEqualityComparer Dim instance As New NameValueCollection(capacity, equalityComparer)


NameValueCollection オブジェクトの容量は、NameValueCollection が保持できる要素数になります。NameValueCollection に要素を追加すると、必要に応じて、内部の配列の再割り当てによって容量が自動的に増加します。
コレクションのサイズを推定できる場合は、初期量を指定すると、NameValueCollection に要素を追加するときに、サイズ変更操作を何度も実行する必要がなくなります。
IEqualityComparer オブジェクトは、比較演算子とハッシュ コード プロバイダを組み合わせます。ハッシュ コード プロバイダは、NameValueCollection 内のキーにハッシュ コードを提供します。比較演算子は 2 つのキーが等しいかどうかを判断します。

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


NameValueCollection コンストラクタ

名前 | 説明 |
---|---|
NameValueCollection () | 空で、既定の初期量を備え、大文字と小文字を区別しない既定のハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (IEqualityComparer) | 空で、既定の初期量を備え、指定した IEqualityComparer オブジェクトを使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (Int32) | 空で、指定した初期量を備え、大文字と小文字を区別しない既定のハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (NameValueCollection) | コピーされるエントリの数と同じ初期量を備え、ソース コレクションと同じハッシュ コード プロバイダおよび比較演算子を使用する新しい NameValueCollection に、指定した NameValueCollection からエントリをコピーします。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (IHashCodeProvider, IComparer) | 空で、既定の初期量を備え、指定したハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (Int32, IEqualityComparer) | 空で、指定した初期量を備え、指定した IEqualityComparer オブジェクトを使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (Int32, NameValueCollection) | 指定した初期量またはコピーされるエントリの数と同じ初期量のうち値が大きい方の初期量を備え、大文字と小文字を区別しない既定のハッシュ コード プロバイダおよび比較演算子を使用する新しい NameValueCollection に、指定した NameValueCollection からエントリをコピーします。 .NET Compact Framework によってサポートされています。 |
NameValueCollection (SerializationInfo, StreamingContext) | シリアル化でき、指定した System.Runtime.Serialization.SerializationInfo と System.Runtime.Serialization.StreamingContext を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 |
NameValueCollection (Int32, IHashCodeProvider, IComparer) | 空で、指定した初期量を備え、指定したハッシュ コード プロバイダと比較演算子を使用する、NameValueCollection クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |

NameValueCollection プロパティ

名前 | 説明 | |
---|---|---|
![]() | Count | NameObjectCollectionBase インスタンスに格納されているキーと値のペアの数を取得します。 ( NameObjectCollectionBase から継承されます。) |
![]() | Item | オーバーロードされます。 NameValueCollection の指定したエントリを取得または設定します。 |
![]() | Keys | NameObjectCollectionBase インスタンス内のすべてのキーを格納する NameObjectCollectionBase.KeysCollection インスタンスを取得します。 ( NameObjectCollectionBase から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | IsReadOnly | NameObjectCollectionBase インスタンスが読み取り専用かどうかを示す値を取得または設定します。 ( NameObjectCollectionBase から継承されます。) |

NameValueCollection メソッド

名前 | 説明 | |
---|---|---|
![]() | Add | オーバーロードされます。 現在の NameValueCollection にエントリを追加します。 |
![]() | Clear | キャッシュに保存された配列を無効化し、NameValueCollection からすべてのエントリを削除します。 |
![]() | CopyTo | NameValueCollection 全体を互換性のある 1 次元の Array にコピーします。コピー操作は、コピー先の配列の指定したインデックスから始まります。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | Get | オーバーロードされます。 NameValueCollection 内で指定したエントリの値をいくつか取得し、1 つのコンマ区切りリストに組み合わせます。 |
![]() | GetEnumerator | NameObjectCollectionBase を反復処理する列挙子を返します。 ( NameObjectCollectionBase から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetKey | NameValueCollection の指定したインデックスにあるキーを取得します。 |
![]() | GetObjectData | ISerializable インターフェイスを実装し、NameObjectCollectionBase インスタンスをシリアル化するために必要なデータを返します。 ( NameObjectCollectionBase から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | GetValues | オーバーロードされます。 NameValueCollection 内の指定したエントリの値を取得します。 |
![]() | HasKeys | NameValueCollection が、null 参照 (Visual Basic では Nothing) ではないキーを格納しているかどうかを示す値を取得します。 |
![]() | OnDeserialization | ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントを発生させます。 ( NameObjectCollectionBase から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | Remove | 指定したキーを持つエントリを NameObjectCollectionBase インスタンスから削除します。 |
![]() | Set | NameValueCollection 内のエントリの値を設定します。 |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | BaseAdd | 指定したキーと値を持つエントリを NameObjectCollectionBase インスタンスに追加します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseClear | NameObjectCollectionBase インスタンスからすべてのエントリを削除します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseGet | オーバーロードされます。 NameObjectCollectionBase インスタンスから、指定したエントリの値を取得します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseGetAllKeys | NameObjectCollectionBase インスタンス内のすべてのキーを格納する String 配列を返します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseGetAllValues | オーバーロードされます。 NameObjectCollectionBase インスタンス内のすべての値を格納する配列を返します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseGetKey | NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリのキーを取得します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseHasKeys | NameObjectCollectionBase インスタンスが、キーが null 参照 (Visual Basic では Nothing) ではないエントリを格納しているかどうかを示す値を取得します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseRemove | 指定したキーを持つエントリを NameObjectCollectionBase インスタンスから削除します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseRemoveAt | NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリを削除します。 ( NameObjectCollectionBase から継承されます。) |
![]() | BaseSet | オーバーロードされます。 NameObjectCollectionBase インスタンス内のエントリの値を設定します。 ( NameObjectCollectionBase から継承されます。) |
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | InvalidateCachedArrays | コレクション内でキャッシュに保存された配列を null 参照 (Visual Basic では Nothing) にリセットします。 |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

NameValueCollection メンバ
関連付けられた String キーおよび String 値のコレクションを表します。これらのキーおよび値には、キーまたはインデックスのいずれかを使用してアクセスできます。
NameValueCollection データ型で公開されるメンバを以下の表に示します。

名前 | 説明 | |
---|---|---|
![]() | NameValueCollection | オーバーロードされます。 NameValueCollection クラスの新しいインスタンスを初期化します。 |


名前 | 説明 | |
---|---|---|
![]() | Count | NameObjectCollectionBase インスタンスに格納されているキーと値のペアの数を取得します。(NameObjectCollectionBase から継承されます。) |
![]() | Item | オーバーロードされます。 NameValueCollection の指定したエントリを取得または設定します。 |
![]() | Keys | NameObjectCollectionBase インスタンス内のすべてのキーを格納する NameObjectCollectionBase.KeysCollection インスタンスを取得します。(NameObjectCollectionBase から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | IsReadOnly | NameObjectCollectionBase インスタンスが読み取り専用かどうかを示す値を取得または設定します。(NameObjectCollectionBase から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Add | オーバーロードされます。 現在の NameValueCollection にエントリを追加します。 |
![]() | Clear | キャッシュに保存された配列を無効化し、NameValueCollection からすべてのエントリを削除します。 |
![]() | CopyTo | NameValueCollection 全体を互換性のある 1 次元の Array にコピーします。コピー操作は、コピー先の配列の指定したインデックスから始まります。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | Get | オーバーロードされます。 NameValueCollection 内で指定したエントリの値をいくつか取得し、1 つのコンマ区切りリストに組み合わせます。 |
![]() | GetEnumerator | NameObjectCollectionBase を反復処理する列挙子を返します。 (NameObjectCollectionBase から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetKey | NameValueCollection の指定したインデックスにあるキーを取得します。 |
![]() | GetObjectData | ISerializable インターフェイスを実装し、NameObjectCollectionBase インスタンスをシリアル化するために必要なデータを返します。 (NameObjectCollectionBase から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | GetValues | オーバーロードされます。 NameValueCollection 内の指定したエントリの値を取得します。 |
![]() | HasKeys | NameValueCollection が、null 参照 (Visual Basic では Nothing) ではないキーを格納しているかどうかを示す値を取得します。 |
![]() | OnDeserialization | ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントを発生させます。 (NameObjectCollectionBase から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | Remove | 指定したキーを持つエントリを NameObjectCollectionBase インスタンスから削除します。 |
![]() | Set | NameValueCollection 内のエントリの値を設定します。 |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | BaseAdd | 指定したキーと値を持つエントリを NameObjectCollectionBase インスタンスに追加します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseClear | NameObjectCollectionBase インスタンスからすべてのエントリを削除します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseGet | オーバーロードされます。 NameObjectCollectionBase インスタンスから、指定したエントリの値を取得します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseGetAllKeys | NameObjectCollectionBase インスタンス内のすべてのキーを格納する String 配列を返します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseGetAllValues | オーバーロードされます。 NameObjectCollectionBase インスタンス内のすべての値を格納する配列を返します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseGetKey | NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリのキーを取得します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseHasKeys | NameObjectCollectionBase インスタンスが、キーが null 参照 (Visual Basic では Nothing) ではないエントリを格納しているかどうかを示す値を取得します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseRemove | 指定したキーを持つエントリを NameObjectCollectionBase インスタンスから削除します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseRemoveAt | NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリを削除します。 (NameObjectCollectionBase から継承されます。) |
![]() | BaseSet | オーバーロードされます。 NameObjectCollectionBase インスタンス内のエントリの値を設定します。 (NameObjectCollectionBase から継承されます。) |
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | InvalidateCachedArrays | コレクション内でキャッシュに保存された配列を null 参照 (Visual Basic では Nothing) にリセットします。 |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- NameValueCollectionのページへのリンク