SortedList<TKey,TValue>.TryGetValue(TKey, TValue) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan nilai yang terkait dengan kunci yang ditentukan.
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
Parameter
- key
- TKey
Kunci yang nilainya akan didapatkan.
- value
- TValue
Ketika metode ini kembali, nilai yang terkait dengan kunci yang ditentukan, jika kunci ditemukan; jika tidak, nilai default untuk jenis value
parameter. Parameter ini diteruskan tanpa diinisialisasi.
Mengembalikan
true
SortedList<TKey,TValue> jika berisi elemen dengan kunci yang ditentukan; jika tidak, false
.
Penerapan
Pengecualian
key
adalah null
.
Contoh
Contoh menunjukkan cara menggunakan TryGetValue metode sebagai cara yang lebih efisien untuk mengambil nilai dalam program yang sering mencoba kunci yang tidak ada dalam daftar yang diurutkan. Sebaliknya, contohnya juga menunjukkan bagaimana Item[] properti (pengindeks di C#) melemparkan pengecualian saat mencoba mengambil kunci yang tidak ada.
Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk SortedList<TKey,TValue> kelas .
// 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", 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.
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 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."
Keterangan
Metode ini menggabungkan fungsionalitas ContainsKey metode dan Item[] properti .
Jika kunci tidak ditemukan, maka value
parameter mendapatkan nilai default yang sesuai untuk jenis TValue
nilai ; misalnya, nol (0) untuk jenis bilangan bulat, false
untuk jenis Boolean, dan null
untuk jenis referensi.
Metode ini melakukan pencarian biner; oleh karena itu, metode ini adalah operasi O(log n
), di mana n
adalah Count.