如果我有 Dictionary<char,...> 是否可以使方法 ContainsKey 不区分大小写?

我知道,在Dictionary<string,...> 中使用了StringComparer.InvariantCultureIgnoreCase,但是当字典中的key 是char 类型时该怎么办?

最佳答案

Dictionary 类有一个接受任何 IEqualityComparer 的构造函数。您需要做的是实现一个简单的不区分大小写的 IEqualityComparer<char> 并将其传递给构造函数,它将在评估 key 时使用。

这是一个类似的问题,用于在不区分大小写的情况下实现 IComparer<char>IEqualityComparer 实际上是相同的:

  • What is the correct way to compare char ignoring case?
  • 关于c# - C#中带字符键的不区分大小写字典,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27542194/

    10-13 03:45