在 C# 中使用字符串索引定义二维数组

本文关键字:索引 定义 二维数组 字符串 | 更新日期: 2023-09-27 18:35:15

如何在 c# 中定义这样的东西:

list["alpha","beta"] = value;

我想访问字典等值:

var item = list["alpha","beta"];

在 C# 中使用字符串索引定义二维数组

你需要的不是二维数组,而是字典。请参阅此处的字典文档。

然后,您将编写 myDic[ "outerDicKey" ][ "innerDicKey" ] 来检索值。

实现聚合字典的类型:

class Test
{
    private struct Key
    {
        public string Key1 { get; set; }
        public string Key2 { get; set; }
        public Key(string key1, string key2) 
            : this()
        {
            Key1 = key1;
            Key2 = key2;
        }
    }
    private readonly Dictionary<Key, object> _dictionary = new Dictionary<Key, object>();
    public object this[string key1, string key2]
    {
        get { return _dictionary[new Key(key1, key2)]; }
        set { _dictionary[new Key(key1, key2)] = value; }
    }
}