连续new两次对象的结果比较

来源:互联网 发布:淘宝流量怎么提上到万 编辑:程序博客网 时间:2024/05/08 11:21
    static void Main(string[] args)        {             int a=11;                                                                        Program pro = new Program();            // Console.WriteLine(pro.test(a).ToString());            pro.check();            Console.ReadLine();        }        public int test(int i)        {            lock (this)            {                if (i > 10)                {                    i--;                    test(i);                }            }            return i;        }        public void check()        {            // Program a = new Program();           // Program b = new Program();            string a = "test";            string b = "test";            if (a.GetHashCode() == b.GetHashCode())//判断hashcode            {                Console.WriteLine("a和b的hashcode相同");            }            else            {                 Console.WriteLine("a和b的hashcode不相同");            }            if (a.GetType() == b.GetType())//判断类型            {                Console.WriteLine("a和b的类型相同");            }            else            {                Console.WriteLine( "a和b的类型不相同");            }            if (a.Equals(b))//判断堆空间            {                 Console.WriteLine("a和b的堆空间相同");            }            else            {                   Console.WriteLine( "a和b的堆空间不相同");            }            //if (a.StrContent.Equals(b.StrContent))//判断堆空间的某个值            //{            //    Console.WriteLine("a和b的堆空间里的值相同");            //}            //else            //{            //    Console.WriteLine("a和b的堆空间里的值不相同");            //}        }
 

a和b的hashcode相同
a和b的类型相同
a和b的堆空间相同

或者不加test内容,则1,3不同
 

原创粉丝点击