object.ReferenceEquals 对象的比较(判断两个对象是否相等)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Compare
{
    class Program
    {
        static void Main(string[] args)
        {
            // Person p1 = new Person();
            // p1.Name = "小强";
            // p1.Age = 18;
            // Person p2 = new Person();
            // p2.Name = "小强";
            // p2.Age = 18;
            // //Equals  不准确
            //// if (p1==p2)
            // if(p1.Equals(p2))
            // {
            //     Console.WriteLine("同一个对象");
            // }
            // else
            // {
            //     Console.WriteLine("不是同一个对象");
            // }

            string s1 = "123";
            string s2 = "123";//new string(new char[]{'1','2','3'});
            //if (s1==s2)
            //if(s1.Equals(s2))

//只要看是否占同一内存
if (object.ReferenceEquals(s1, s2)) { Console.WriteLine("同一个对象"); } else { Console.WriteLine("不是同一个对象"); } Console.ReadKey(); } } class Person { public string Name { get; set; } public int Age { get; set; } public override bool Equals(object obj) { Person pp = (Person)obj; if (this.Name == pp.Name && this.Age == pp.Age) { return true; } return false; } } }

 

posted @ 2016-10-11 18:55  墨水心2016  阅读(1638)  评论(0编辑  收藏  举报