欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

c#字符串值类型与引用类型比较示例

时间:2021-03-19 09:44:28|栏目:.NET代码|点击:

复制代码 代码如下:

classProgram
{
    staticvoid Main()

    {
        int a = 9;    //给变量a赋值为9
        int b = a;   //将a的副本给变量b
        b = 10;
        Console.WriteLine(string.Format("a={0},b={1}", a, b));
        Person ZS = newPerson();       //张三
        ZS.Age = 99;           //张三的年龄是99
        Person SM = ZS;        //三毛等于张三,即张三和三毛就是同一个人
        SM.Age = 100;      //三毛年龄变成100,张三也就变成了100
       Console.WriteLine(string.Format("A={0},B={1}", ZS.Age, SM.Age));
        Console.ReadKey();

    }

}
classPerson
{
    publicint Age { get; set; }
}

相同的结构,不同的结果。


证明string是引用类型

复制代码 代码如下:

using System;

classProgram
{
    staticvoid Main()
    {
        int n = 99;
        Console.WriteLine("Before:n={0}", n.GetHashCode());
        //此时获取到的哈希码值就是n的变量值
        GetInt(n);
        string s = "Hello";
        Console.WriteLine("Before:s={0}", s.GetHashCode());
        GetString(s);
        Console.ReadKey();
    }
    staticint GetInt(int n)
    {
        Console.WriteLine("After:m={0}", n.GetHashCode());
        //传过来的是变量值,说明这是值传递
        return n;
    }
    staticstring GetString(string s)
    {
        Console.WriteLine("After:s={0}", s.GetHashCode());
        //传过来的是地址而不"Hello",说明这时引用传递
        return s;
    }
}

上一篇:C#.net编程创建Access文件和Excel文件的方法详解

栏    目:.NET代码

下一篇:DataSet、DataTable、DataRow区别详解

本文标题:c#字符串值类型与引用类型比较示例

本文地址:http://www.codeinn.net/misctech/83630.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有