zoukankan      html  css  js  c++  java
  • Day3 02判定两个对象的引用是否相同

    C#中类型分为值类型和引用类型

    清楚了他俩的区别,像验证下,如果在C++中,就可以通过指针直接看地址,但是C#中,找了一会儿没找到方法(主要是我技术比较菜)。

    不过,用根基类的ReferenceEquals静态方法可以判断两个对象的引用是否相等

    使用方法如下:

    Object.ReferenceEquals(arrayN1, arrayN2)  返回值是布尔类型

    值类型: 比如 int   

    int a = 5;

    int b = a;   //这时,b有自己的内存空间,a只是把他的值赋给了b。改变b的值,不会影响到a。

    引用类型:如果 类 class

    class Dog{}

    class Dog1 = new Dog();

    class Dog2 = Dog1;   //这时,Dog2没有自己的内存空间,Dog1把自己的内存地址给了2,这时,如果该Dog2的值,Dog1的值也随之改变。

    例如:

    namespace 测试
    {

      class Program
      {
        static void Main(string[] args)
        {
          int a = 10;
          int b = a;

          int[] arrayN1 = { 12, 3, 4, 5, 6, 7 };
          int[] arrayN2 = arrayN1;

          // 用根基类的ReferenceEquals静态方法可以判断两个对象的引用是否相等
          Console.WriteLine(Object.ReferenceEquals(arrayN1, arrayN2));

          Console.ReadKey(true);

        }
      }
    }

  • 相关阅读:
    什么是JAVA?JAVA能做什么?
    vagrant 虚拟机搭建 以及virtualbox 安装 配置
    sourcetree跳过注册的方法
    layuiAdmin安装
    Navicat获取注册码
    laravel artisan命令大全
    vagrant命令
    安装python 3.7
    搭建golang webcron 定时任务管理平台
    mysql创建用户
  • 原文地址:https://www.cnblogs.com/darwen/p/7808127.html
Copyright © 2011-2022 走看看