值类型:值类型变量,存储的是对象的值。给其赋值,会创建值的副本,修改任何一个副本,不会影响其他副本。

int x = 5;

int y = x;  //创建一个x的副本y  x把其自身的值传送给了y 也就是5

int z = x; //创建一个x的副本z

y ++;

z++;

得到的结果应该是:x = 5;y = 6; z = 6;

引用类型:引用类型变量,存储对象的内存地址,赋值不会创建值的副本,只会创建地址的副本修改任何一个副本,也同时修改其他的副namespace 引用类型和值类型

说白了,这东西就跟电脑复制粘贴和创建快捷方式类似。你把D盘的av拷贝到了桌面,然后看,这过程中,你删了,或者怎么了,不影响D盘里的源文件。如果你把快捷方式发送到了桌面,改了,就直接把源文件改了。

值类型,开辟了新的内存空间,空间里存的是值。int i  ,int j ,int k都有自己的内存空间,里面存的都是自己的值,改了也互不影响。

引用类型,就是人家把自己的内存地址给你了,你改,就把人家的值改了。

例子:

{
  class Program
  {
    static void Main(string[] args)
    {
      int[] arrayDarwen = new int[] { 1, 2, 3, 4, 5, 6, 7 };  //定义一个int类型的数组arrayDarwen
      int[] arrayDarwen1 = arrayDarwen;                       //注意:没有用new关键字   把arrayDarwen的地址 给了arrayDarwen1 相当于把arrayDarwen的                              门牌号给了它。类似指针。
      for (int i = 0; i < arrayDarwen.Length; i++)            //改变arrayDarwen的值
      {
        arrayDarwen1[i] += 1;
      }
      ShowArray(arrayDarwen);                                  //发现  arrayDarwen的值也变化了
      Console.WriteLine();
      ShowArray(arrayDarwen1);
      Console.ReadKey();
      }

      public static void ShowArray(int[] j)
      {
        for (int i = 0; i < j.Length; i++)
        {
          Console.Write(j[i]+",");
        }
      }
    }
}

 

最新文章

  1. 特殊的数据类型: bit、sql_variant、sysname
  2. Java Enumeration接口
  3. 【jQuery api】 $.type(obj)
  4. 卸载 ibus 使Ubuntu16.04任务栏与启动器消失 问题解决
  5. rabiitmq集群完整安装
  6. asp.net 有关时间各种(输出)处理
  7. python装饰器初探
  8. CSS控制div宽度最大宽度/高度和最小宽度/高度
  9. 必须声明标量变量 &quot;@cid&quot;。
  10. ring0和ring3的区别
  11. TEXT文本编辑框3 点击按钮添加文本至文本输入框
  12. html练习(5)
  13. Ubuntu16.04下Office替代品Office Online
  14. VMware虚拟机,从厚置备改成精简置备,并减小硬盘的实际占用空间
  15. ubuntu如何为获得root权限
  16. &lt;转载&gt; 22种代码味道(Martin Fowler与Kent Beck) http://blog.csdn.net/lovelion/article/details/9301691
  17. ES8新特性——ES8 was Released and here are its Main New Features
  18. unix架构
  19. 用js制作简易计算器及猜随机数字游戏
  20. leetcode个人题解——#49 Group Anograms

热门文章

  1. PHP7中的数据类型(一)计数引用、写时复制,可垃圾回收
  2. CentOS下搭建docker+.net core
  3. Python入门之format()方法
  4. P1219八皇后
  5. chrome浏览器截长图的方法
  6. 高性能迷你React框架anujs1.1.3发布
  7. 介绍一下 except 的作用和用法?
  8. Springboot+Mybatis AOP注解动态切换数据源
  9. linux 更改 mysql 管理员口令
  10. 服务器上搭建jupyter notebook