Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mendapatkan Kunci Kamus daripada Nilainya dalam 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!