Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

Case-insensitive Dictionary ใน C#

สร้าง Dictionary<string, TValue> ที่ไม่สนใจตัวพิมพ์เล็ก/ใหญ่ของ Key โดยส่ง StringComparer.OrdinalIgnoreCase เข้า Constructor

ตัวอย่างโค้ด

using System;
using System.Collections.Generic;

public class Program
{
    public static void Main()
    {
        var dict = new Dictionary(StringComparer.OrdinalIgnoreCase);
        dict.Add("cricket", 1);
        dict.Add("football", 2);
        
        foreach (var val in dict) Console.WriteLine(val);
        
        // Case-insensitive lookup
        Console.WriteLine(dict["cricket"]);  // 1
        Console.WriteLine(dict["CRICKET"]);  // 1
    }
}

ผลลัพธ์

[cricket, 1]
[football, 2]
1
1

Comparer อื่น: StringComparer.CurrentCultureIgnoreCase (ขึ้นกับวัฒนธรรมระบบ), StringComparer.InvariantCultureIgnoreCase