ListDictionary.Add メソッド
指定したキーおよび値を持つエントリを ListDictionary に追加します。
Public Overridable Sub Add( _
ByVal key As Object, _ ByVal value As Object _) Implements IDictionary.Add
[C#]
public virtual void Add(objectkey,objectvalue);
[C++]
public: virtual void Add(Object* key,Object* value);
[JScript]
public function Add(
key : Object,value : Object);
パラメータ
- key
追加するエントリのキー。 - value
追加するエントリの値。値は null 参照 (Visual Basic では Nothing) に設定できます。
実装
例外
例外の種類 | 条件 |
---|---|
ArgumentNullException | key が null 参照 (Visual Basic では Nothing) です。 |
ArgumentException | 同じキーを持つエントリが、 ListDictionary に既に存在します。 |
解説
状態とハッシュ コード値との間に相関関係のないオブジェクトは、通常はキーとして使用しないでください。たとえば、StringBuilder オブジェクトよりも String オブジェクトの方が、キーとして使用するには適しています。
Item プロパティを使用すると、 ListDictionary 内に存在しないキーの値を設定することで、新しい要素を追加することもできます。たとえば、 myCollection["myNonexistentKey"] = myValue
のように使用します。ただし、指定したキーが ListDictionary 内に既に存在する場合、 Item プロパティを設定すると既存の値が上書きされます。対照的に、 Add メソッドは既存の要素を変更しません。
これは O(n) 操作です。 n は Count です。
使用例
[Visual Basic, C#, C++] ListDictionary に対して要素を追加および削除するコード例を次に示します。
Imports System
Imports System.Collections
Imports System.Collections.Specialized
Public Class SamplesListDictionary
Public Shared Sub Main()
' Creates and initializes a new ListDictionary.
Dim myCol As New ListDictionary()
myCol.Add("Braeburn Apples", "1.49")
myCol.Add("Fuji Apples", "1.29")
myCol.Add("Gala Apples", "1.49")
myCol.Add("Golden Delicious Apples", "1.29")
myCol.Add("Granny Smith Apples", "0.89")
myCol.Add("Red Delicious Apples", "0.99")
' Displays the values in the ListDictionary in three different ways.
Console.WriteLine("Initial contents of the ListDictionary:")
PrintKeysAndValues(myCol)
' Deletes a key.
myCol.Remove("Plums")
Console.WriteLine("The collection contains the following elements after removing ""Plums"":")
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 IDictionary)
Console.WriteLine(" KEY VALUE")
Dim de As DictionaryEntry
For Each de In myCol
Console.WriteLine(" {0,-25} {1}", de.Key, de.Value)
Next de
Console.WriteLine()
End Sub 'PrintKeysAndValues
End Class 'SamplesListDictionary
'This code produces the following output.
'
'Initial contents of the ListDictionary:
' KEY VALUE
' Braeburn Apples 1.49
' Fuji Apples 1.29
' Gala Apples 1.49
' Golden Delicious Apples 1.29
' Granny Smith Apples 0.89
' Red Delicious Apples 0.99
'
'The collection contains the following elements after removing "Plums":
' KEY VALUE
' Braeburn Apples 1.49
' Fuji Apples 1.29
' Gala Apples 1.49
' Golden Delicious Apples 1.29
' Granny Smith Apples 0.89
' Red Delicious Apples 0.99
'
'The collection contains the following elements after it is cleared:
' KEY VALUE
'
[C#]
using System;
using System.Collections;
using System.Collections.Specialized;
public class SamplesListDictionary {
public static void Main() {
// Creates and initializes a new ListDictionary.
ListDictionary myCol = new ListDictionary();
myCol.Add( "Braeburn Apples", "1.49" );
myCol.Add( "Fuji Apples", "1.29" );
myCol.Add( "Gala Apples", "1.49" );
myCol.Add( "Golden Delicious Apples", "1.29" );
myCol.Add( "Granny Smith Apples", "0.89" );
myCol.Add( "Red Delicious Apples", "0.99" );
// Displays the values in the ListDictionary in three different ways.
Console.WriteLine( "Initial contents of the ListDictionary:" );
PrintKeysAndValues( myCol );
// Deletes a key.
myCol.Remove( "Plums" );
Console.WriteLine( "The collection contains the following elements after removing \"Plums\":" );
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( IDictionary myCol ) {
Console.WriteLine( " KEY VALUE" );
foreach ( DictionaryEntry de in myCol )
Console.WriteLine( " {0,-25} {1}", de.Key, de.Value );
Console.WriteLine();
}
}
/*
This code produces the following output.
Initial contents of the ListDictionary:
KEY VALUE
Braeburn Apples 1.49
Fuji Apples 1.29
Gala Apples 1.49
Golden Delicious Apples 1.29
Granny Smith Apples 0.89
Red Delicious Apples 0.99
The collection contains the following elements after removing "Plums":
KEY VALUE
Braeburn Apples 1.49
Fuji Apples 1.29
Gala Apples 1.49
Golden Delicious Apples 1.29
Granny Smith Apples 0.89
Red Delicious Apples 0.99
The collection contains the following elements after it is cleared:
KEY VALUE
*/
[C++]
#using <mscorlib.dll>
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
void PrintKeysAndValues( IDictionary* myCol ) {
Console::WriteLine( S" KEY VALUE" );
IEnumerator* myEnum = myCol->GetEnumerator();
while (myEnum->MoveNext())
{
DictionaryEntry de = *__try_cast<DictionaryEntry*>(myEnum->Current);
Console::WriteLine( S" {0,-25} {1}", de.Key, de.Value );
}
Console::WriteLine();
}
int main() {
// Creates and initializes a new ListDictionary.
ListDictionary* myCol = new ListDictionary();
myCol->Add( S"Braeburn Apples", S"1.49" );
myCol->Add( S"Fuji Apples", S"1.29" );
myCol->Add( S"Gala Apples", S"1.49" );
myCol->Add( S"Golden Delicious Apples", S"1.29" );
myCol->Add( S"Granny Smith Apples", S"0.89" );
myCol->Add( S"Red Delicious Apples", S"0.99" );
// Displays the values in the ListDictionary in three different ways.
Console::WriteLine( S"Initial contents of the ListDictionary:" );
PrintKeysAndValues( myCol );
// Deletes a key.
myCol->Remove( S"Plums" );
Console::WriteLine( S"The collection contains the following elements after removing \"Plums\":" );
PrintKeysAndValues( myCol );
// Clears the entire collection.
myCol->Clear();
Console::WriteLine( S"The collection contains the following elements after it is cleared:" );
PrintKeysAndValues( myCol );
}
/*
This code produces the following output.
Initial contents of the ListDictionary:
KEY VALUE
Braeburn Apples 1.49
Fuji Apples 1.29
Gala Apples 1.49
Golden Delicious Apples 1.29
Granny Smith Apples 0.89
Red Delicious Apples 0.99
The collection contains the following elements after removing "Plums":
KEY VALUE
Braeburn Apples 1.49
Fuji Apples 1.29
Gala Apples 1.49
Golden Delicious Apples 1.29
Granny Smith Apples 0.89
Red Delicious Apples 0.99
The collection contains the following elements after it is cleared:
KEY VALUE
*/
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
参照
ListDictionary クラス | ListDictionary メンバ | System.Collections.Specialized 名前空間 | Remove | Item | IDictionary.Add