SortedList<TKey,TValue>.Add(TKey, TValue) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge un elemento con la chiave e il valore specificati al metodo SortedList<TKey,TValue>.
public:
virtual void Add(TKey key, TValue value);
public void Add (TKey key, TValue value);
abstract member Add : 'Key * 'Value -> unit
override this.Add : 'Key * 'Value -> unit
Public Sub Add (key As TKey, value As TValue)
Parametri
- key
- TKey
Chiave dell'elemento da aggiungere.
- value
- TValue
Valore dell'elemento da aggiungere. Il valore può essere null
per i tipi di riferimento.
Implementazioni
Eccezioni
key
è null
.
In SortedList<TKey,TValue> è già presente un elemento con la stessa chiave.
Esempio
Nell'esempio di codice seguente viene creato un vuoto SortedList<TKey,TValue> di stringhe con chiavi stringa e viene usato il Add metodo per aggiungere alcuni elementi. Nell'esempio viene illustrato che il Add metodo genera un'eccezione ArgumentException quando si tenta di aggiungere una chiave duplicata.
Questo esempio di codice fa parte di un esempio più ampio fornito per la SortedList<TKey,TValue> classe .
// Create a new sorted list of strings, with string
// keys.
SortedList<String^, String^>^ openWith =
gcnew SortedList<String^, String^>();
// Add some elements to the list. There are no
// duplicate keys, but some of the values are duplicates.
openWith->Add("txt", "notepad.exe");
openWith->Add("bmp", "paint.exe");
openWith->Add("dib", "paint.exe");
openWith->Add("rtf", "wordpad.exe");
// The Add method throws an exception if the new key is
// already in the list.
try
{
openWith->Add("txt", "winword.exe");
}
catch (ArgumentException^)
{
Console::WriteLine("An element with Key = \"txt\" already exists.");
}
// Create a new sorted list of strings, with string
// keys.
SortedList<string, string> openWith =
new SortedList<string, string>();
// Add some elements to the list. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");
// The Add method throws an exception if the new key is
// already in the list.
try
{
openWith.Add("txt", "winword.exe");
}
catch (ArgumentException)
{
Console.WriteLine("An element with Key = \"txt\" already exists.");
}
' Create a new sorted list of strings, with string
' keys.
Dim openWith As New SortedList(Of String, String)
' Add some elements to the list. There are no
' duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")
' The Add method throws an exception if the new key is
' already in the list.
Try
openWith.Add("txt", "winword.exe")
Catch
Console.WriteLine("An element with Key = ""txt"" already exists.")
End Try
// Create a new sorted list of strings, with string
// keys.
let openWith = SortedList<string, string>()
// Add some elements to the list. There are no
// duplicate keys, but some of the values are duplicates.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")
// The Add method throws an exception if the new key is
// already in the list.
try
openWith.Add("txt", "winword.exe");
with
| :? ArgumentException ->
printfn "An element with Key = \"txt\" already exists."
Commenti
Una chiave non può essere null
, ma un valore può essere, se il tipo di valori nell'elenco ordinato, TValue
, è un tipo riferimento.
È anche possibile utilizzare la Item[] proprietà per aggiungere nuovi elementi impostando il valore di una chiave che non esiste in SortedList<TKey,TValue>, ad esempio myCollection["myNonexistentKey"] = myValue
. Tuttavia, se la chiave specificata esiste già in , l'impostazione SortedList<TKey,TValue>della Item[] proprietà sovrascrive il valore precedente. Al contrario, il Add metodo non modifica gli elementi esistenti.
Se Count è già uguale a Capacity, la capacità di viene aumentata riallocazione automatica della SortedList<TKey,TValue> matrice interna e gli elementi esistenti vengono copiati nella nuova matrice prima dell'aggiunta del nuovo elemento.
Questo metodo è un'operazione O(n
) per i dati non ordinamento, dove n
è Count. Si tratta di un'operazione O(log n
) se il nuovo elemento viene aggiunto alla fine dell'elenco. Se l'inserimento causa un ridimensionamento, l'operazione è O(n
).