SortedList<TKey,TValue>.TryGetValue(TKey, TValue) Methode

Definitie

Hiermee haalt u de waarde op die is gekoppeld aan de opgegeven sleutel.

public:
 virtual bool TryGetValue(TKey key, [Runtime::InteropServices::Out] TValue % value);
public bool TryGetValue(TKey key, out TValue value);
abstract member TryGetValue : 'Key * 'Value -> bool
override this.TryGetValue : 'Key * 'Value -> bool
Public Function TryGetValue (key As TKey, ByRef value As TValue) As Boolean

Parameters

key
TKey

De sleutel waarvan de waarde moet worden opgehaald.

value
TValue

Wanneer deze methode wordt geretourneerd, wordt de waarde die is gekoppeld aan de opgegeven sleutel, als de sleutel wordt gevonden; anders is de standaardwaarde voor het type van de value parameter. Deze parameter wordt niet-geïnitialiseerd doorgegeven.

Retouren

trueals het SortedList<TKey,TValue> een element met de opgegeven sleutel bevat; anders. false

Implementeringen

Uitzonderingen

key is null.

Voorbeelden

In het voorbeeld ziet u hoe u de TryGetValue methode gebruikt als een efficiëntere manier om waarden op te halen in een programma waarmee vaak sleutels worden geprobeerd die zich niet in de gesorteerde lijst bevinden. In het voorbeeld ziet u daarentegen ook hoe de Item[] eigenschap (de indexeerfunctie in C#) uitzonderingen genereert bij het ophalen van niet-bestaande sleutels.

Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor de SortedList<TKey,TValue> klasse.

// When a program often has to try keys that turn out not to
// be in the list, TryGetValue can be a more efficient
// way to retrieve values.
string value = "";
if (openWith.TryGetValue("tif", out value))
{
    Console.WriteLine("For key = \"tif\", value = {0}.", value);
}
else
{
    Console.WriteLine("Key = \"tif\" is not found.");
}
' When a program often has to try keys that turn out not to
' be in the list, TryGetValue can be a more efficient 
' way to retrieve values.
Dim value As String = ""
If openWith.TryGetValue("tif", value) Then
    Console.WriteLine("For key = ""tif"", value = {0}.", value)
Else
    Console.WriteLine("Key = ""tif"" is not found.")
End If
// When a program often has to try keys that turn out not to
// be in the list, TryGetValue can be a more efficient
// way to retrieve values.
match openWith.TryGetValue("tif") with
| true, value ->
    printfn "For key = \"tif\", value = {value}."
| false, _ ->
    printfn "Key = \"tif\" is not found."
// The indexer throws an exception if the requested key is
// not in the list.
try
{
    Console.WriteLine("For key = \"tif\", value = {0}.",
        openWith["tif"]);
}
catch (KeyNotFoundException)
{
    Console.WriteLine("Key = \"tif\" is not found.");
}
' The default Item property throws an exception if the requested
' key is not in the list.
Try
    Console.WriteLine("For key = ""tif"", value = {0}.", _
        openWith("tif"))
Catch 
    Console.WriteLine("Key = ""tif"" is not found.")
End Try
// The indexer throws an exception if the requested key is
// not in the list.
try
    printfn $"""For key = "tif", value = {openWith["tif"]}."""
with 
    | :? KeyNotFoundException ->
        printfn "Key = \"tif\" is not found."

Opmerkingen

Deze methode combineert de functionaliteit van de ContainsKey methode en de Item[] eigenschap.

Als de sleutel niet wordt gevonden, haalt de value parameter de juiste standaardwaarde op voor het waardetype TValue, bijvoorbeeld nul (0) voor gehele getallen, false voor Booleaanse typen en null voor verwijzingstypen.

Met deze methode wordt een binaire zoekopdracht uitgevoerd; Daarom is deze methode een O(logboek n) bewerking, waar n is Count.

Van toepassing op

Zie ook