Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mendapatkan Kunci Kamus daripada Nilainya dalam C#?

Bagaimanakah Saya Boleh Mendapatkan Kunci Kamus daripada Nilainya dalam C#?

Barbara Streisand
Barbara Streisandasal
2024-12-29 00:41:10373semak imbas

How Can I Retrieve a Dictionary Key from Its Value in C#?

Mendapatkan Kunci Kamus daripada Nilainya

Dalam C#, membezakan kunci yang sepadan dengan nilai dalam Kamus boleh dicapai melalui beberapa kaedah . Keunikan semula jadi kunci dalam Kamus menghalang pengambilan terus kunci mengikut nilai.

Menggunakan FirstOrDefault()

Memandangkan nilai Kamus sememangnya tidak unik, operasi carian adalah perlu untuk mencari kunci yang dikehendaki. Dengan menggunakan FirstOrDefault(), kita boleh mencari pasangan nilai kunci yang mana nilainya sepadan dengan input dan mengembalikan kuncinya:

var myKey = types.FirstOrDefault(x => x.Value == "one").Key;

Mencipta Kamus Songsang

Penyelesaian alternatif, sesuai untuk kes di mana nilai adalah unik dan jarang dimasukkan, adalah untuk membina kamus songsang. Dalam pendekatan ini, nilai berfungsi sebagai kunci dan kunci sebagai nilai:

var inverseTypes = types.ToDictionary(x => x.Value, x => x.Key);
var myKey = inverseTypes["one"];

Walaupun HashTable atau SortedLists menawarkan struktur data alternatif, mereka biasanya tidak menyediakan penyelesaian asli untuk mendapatkan kunci mengikut nilai. Pendekatan yang dinyatakan di atas kekal berkesan dan cekap untuk kebanyakan senario.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Kunci Kamus daripada Nilainya dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn