在 C# 中按值獲取字典鍵

Muhammad Maisam Abbas 2024年2月16日
  1. 使用 C# 中的 foreach 迴圈按值獲取字典鍵
  2. 使用 C# 中的 Linq 方法按值獲取字典鍵
在 C# 中按值獲取字典鍵

本教程將介紹在 C# 中按值獲取字典鍵的方法。

使用 C# 中的 foreach 迴圈按值獲取字典鍵

不幸的是,沒有內建的方法可以從 C# 中的字典中按值獲取鍵。我們必須依靠一些使用者定義的方法來實現此目標。foreach 迴圈用於遍歷資料結構。我們可以將 foreach 迴圈與 if 語句一起使用,以從 C# 中的字典中按值獲取鍵。以下程式碼示例向我們展示瞭如何使用 C# 中的 foreach 迴圈按值獲取字典鍵。

using System;
using System.Collections.Generic;
using System.Linq;

namespace get_dictionary_key_by_value {
  class Program {
    static void Main(string[] args) {
      Dictionary<string, string> types =
          new Dictionary<string, string>() { { "1", "one" }, { "2", "two" }, { "3", "three" } };
      string key = "";
      foreach (var pair in types) {
        if (pair.Value == "one") {
          key = pair.Key;
        }
      }
      Console.WriteLine(key);
    }
  }
}

輸出:

1

我們建立了字典 types,並使用 foreach 迴圈遍歷 types,以查詢與值 one 相關的鍵。我們使用了 foreach 迴圈來遍歷 types 字典中的每一對,並檢查每一對的值是否與 one 匹配。如果對值 pair.valueone 相匹配,則使用 key = pair.key 將對的鍵儲存在 key 字串中。

使用 C# 中的 Linq 方法按值獲取字典鍵

Linq 或語言整合查詢用於在 C# 中整合 SQL 查詢的功能。我們可以使用 Linq 通過字典值獲取字典鍵。請參見以下程式碼示例。

using System;
using System.Collections.Generic;
using System.Linq;

namespace get_dictionary_key_by_value {
  class Program {
    static void Main(string[] args) {
      Dictionary<string, string> types =
          new Dictionary<string, string>() { { "1", "one" }, { "2", "two" }, { "3", "three" } };
      var myKey = types.FirstOrDefault(x => x.Value == "one").Key;
      Console.WriteLine(myKey);
    }
  }
}

輸出:

1

我們建立了字典 types,並使用 C# 中的 Linq 將與值 one 相關的鍵儲存在 myKey 字串中。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相關文章 - Csharp Dictionary