博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Object类的用法(三)
阅读量:7051 次
发布时间:2019-06-28

本文共 1400 字,大约阅读时间需要 4 分钟。

using System;
using System.Collections.Generic;
using System.Text;
namespace String._002
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = "Hello";
          string t = (string)s.Clone();   // 不复制;s 和 t 引用同一个字符串
           //相当于 string t = "Hello"也相当于string t = s;
           
            bool testbool = (object)s == (object)t;
            Console.WriteLine(testbool);   //true
            string u = string.Copy(s); // 进行复制,s 和 u 引用不同的对象
            Console.WriteLine(s == u);// true 判别str的值是否和strCopy的值是否相等\\实际上是值比较
            Console.WriteLine((object)s == (object)u);// false 判别str所指的对象是否和strCopy所指的对象相同
            //实际上是比较两个引用是否相等,也是比较地址是否相等
            Console.WriteLine(Object.ReferenceEquals(s, t));// true 判别s所指的对象是否和t所指的对象相同
            //实际上是比较两个引用是否相等,也是比较地址是否相等
            Console.WriteLine(Object.ReferenceEquals(s, u));// false 判别s所指的对象是否和u所指的对象相同
            //实际上是比较两个引用是否相等,也是比较地址是否相等
            Console.WriteLine(s.Equals(t));   //true
            Console.WriteLine(Equals(s, t));  //true
            Console.WriteLine(s.Equals(u));   //true
            Console.WriteLine(Equals(s, u));  //true
            int a = 8;
            int b = 8;
            Console.WriteLine((object)a == (object)b);//false  比较的是引用
            Console.WriteLine(ReferenceEquals(a, b)); //false  比较的是引用
            Console.WriteLine(a.Equals(b));           //true   比较的是值和类型
            Console.WriteLine(Equals(a, b));          //true   比较的是值和类型
          
            string ret = string.Format("s same as t: {0}, s same as u: {1}",
               Object.ReferenceEquals(s, t), (object)s == (object)u);
            Console.WriteLine(ret);
            Console.ReadKey();
           
        }
    }
}
本文转自terryli51CTO博客,原文链接:http://blog.51cto.com/terryli/519428 ,如需转载请自行联系原作者
你可能感兴趣的文章
使用 multipart/x-mixed-replace 实现 http 实时视频流
查看>>
史上最牛内推小组(持续更新)
查看>>
现实中的路由规则,可能比你想象中复杂的多
查看>>
nginx配置gzip中的坑
查看>>
Javascript中的函数声明与函数表达式
查看>>
Python学习笔记 - queue
查看>>
茶器漫谈 高逼格 or 真内涵?
查看>>
HTML5学习之Web Storage基础知识
查看>>
tab切换
查看>>
垃圾回收及内存调试工具的介绍
查看>>
你的接口,真的能承受高并发吗?
查看>>
自定义View实用小技巧
查看>>
iOS CALayer anchorPoint 的应用场景
查看>>
如何變聰明?訓練自己變成結構化思維型的人!- TechMoon 科技月球
查看>>
超好用的VueJs调试工具——vue-devtools
查看>>
到底怎么才算“懂”python的twisted框架?
查看>>
Flutter 基础布局Widgets之Expanded详解
查看>>
spring cloud微服务分布式云架构- Eureka服务器搭建及配置
查看>>
对当前JAVA流行框架的一些小感悟
查看>>
双十一流量洪峰 支撑阿里核心业务的云数据库揭秘
查看>>