日期:2014-05-16  浏览次数:21116 次

有没有哈希表的键是多个数字的
本帖最后由 srhouyu 于 2014-03-18 18:10:58 编辑
比如,要求一个坐标(x,y)对应一个值,那么需要HashTable<double key1, double key2, double value>这样的哈希表。不知道C#有没有支持这个的?
------解决方案--------------------
给个参考
        struct key : IEquatable<key>
        {
            public double key1;
            public double key2;
            public override int GetHashCode()
            {
                return key1.GetHashCode() ^ key2.GetHashCode();
            }
            public override bool Equals(object obj)
            {
                return Equals((key)obj);
            }
            public bool Equals(key other)
            {
                return key1 == other.key1 && key2 == other.key2;
            }
        }
System.Collections.Generic.Dictionary<key, double>