private static LinkedList<UserInfo> myData = new LinkedList<UserInfo>();UserInfo tempUser = new UserInfo(txtName .Text .Trim (),txtCity .Text .Trim ());
LinkedListNode<UserInfo> myNode = myData.Find (tempUser ) ;//错误,找不到
UserInfo ui = myData.First.Value;
LinkedListNode<UserInfo> myNode1 = myData.Find(ui);//正确我调试的时候看到tempUser和ui的值是一模一样,即使UserInfo tempUser = new UserInfo("张三","上海")(myData里面已经有这么一对); myData.Find(tempUser)也是找不到的。这是为什么的呢?

解决方案 »

  1.   

    myData只看到你定义了对象,都没赋值啊?!
      

  2.   

    UserInfo tempUser = new UserInfo(txtName.Text.Trim(),txtCity.Text.Trim());
    myData.Add(tempUser);
    ...
      

  3.   

    myData里面已经有值的了!!
                myData .AddLast (new UserInfo ("张1","北京"));
                myData .AddLast (new UserInfo ("张2","广州"));
                myData .AddLast (new UserInfo ("张3","重庆"));
                myData .AddLast (new UserInfo ("张4","南海"));
                myData .AddLast (new UserInfo ("张5","南京"));
                myData .AddLast (new UserInfo ("张6","天津"));
                myData .AddLast (new UserInfo ("张7","武汉"));
                myData .AddLast (new UserInfo ("张8","黑龙江"));
                myData .AddLast (new UserInfo ("张9","西藏"));
                myData .AddLast (new UserInfo ("张10","南宁"));
      

  4.   

    public class UserInfo
            {
                private string _name;
                private string _city;
                public UserInfo(string name, string city)
                {
                    _name = name;
                    _city = city;
                }
                public string Name
                {
                    set { _name = value; }
                    get { return _name; }
                }
                public string City
                {
                    set { _city = value; }
                    get { return _city; }
                }
            }
            private static LinkedList<UserInfo > myData = new LinkedList<UserInfo >();
            static void Main(string[] args)
            {
                myData .AddLast (new UserInfo ("张三","北京"));
                myData .AddLast (new UserInfo ("张1","北京"));
                myData .AddLast (new UserInfo ("张2","广州"));
                myData .AddLast (new UserInfo ("张3","重庆"));
                myData .AddLast (new UserInfo ("张4","南海"));
                myData .AddLast (new UserInfo ("张5","南京"));
                myData .AddLast (new UserInfo ("张6","天津"));
                myData .AddLast (new UserInfo ("张7","武汉"));
                myData .AddLast (new UserInfo ("张8","黑龙江"));
                myData .AddLast (new UserInfo ("张9","西藏"));
                myData .AddLast (new UserInfo ("张10","南宁"));
                UserInfo tempUser = new UserInfo("张三","北京");
                LinkedListNode<UserInfo> myNode = myData.Find(tempUser);
                Console.WriteLine(myNode.Value.ToString());//这里错了,所没有引用对象
    贴上全部代码~