将通用集合添加到LinkedList问题

时间:2010-11-27 13:03:08

标签: c# generics collections

我有收藏:

 class HashedData : IComparable
{
    string key;

    public string Key
    {
        get { return key; }
        set { key = value; }
    }
    string value;

    public string Value
    {
        get { return this.value; }
        set { this.value = value; }
    }


    public int CompareTo(object obj)
    {
        if (obj is HashedData)
        {
            HashedData hd = (HashedData)obj;
            return this.Key.CompareTo(hd.Key);
        }
        throw new NotImplementedException("Obiekt nie jest typu HashData");
    }
}

以及将此集合用作类型od LInkedList的方法:

        public void AddToHashTable(List<LinkedList<HashedData>> tablicaHashująca, HashedData data)
    {
        tablicaHashujaca[this.Hashuj(data.Key)].AddLast(**data**);
    }

我有错误:

  

错误1“System.Collections.Generic.LinkedList.AddLast(string)”的最佳重载方法匹配具有一些无效参数

     

错误2参数1:无法从'Hashowanie.HashedData'转换为'string'

但为什么我不能将HashData对象添加到LinkedList?这有什么办法吗?

2 个答案:

答案 0 :(得分:2)

如果你定义LinkedList&lt;我能够做到这一点。 HashedData&GT;然后当你调用AddLast时,它会让你在LinkedList中添加HashedData的对象。

我没有看到任何问题,请您发布更多代码

答案 1 :(得分:0)

data.Value

不确定这是不是你想要的。