SortedList<TKey,TValue>.TryGetValue(TKey, TValue) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.