欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c#字符串值類型與引用類型比較示例

 更新時(shí)間:2014年03月04日 09:48:47   作者:  
這篇文章主要介紹了c#字符串值類型與引用類型比較示例,需要的朋友可以參考下

復(fù)制代碼 代碼如下:

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; }
}

相同的結(jié)構(gòu),不同的結(jié)果。


證明string是引用類型

復(fù)制代碼 代碼如下:

using System;

classProgram
{
    staticvoid Main()
    {
        int n = 99;
        Console.WriteLine("Before:n={0}", n.GetHashCode());
        //此時(shí)獲取到的哈希碼值就是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",說明這時(shí)引用傳遞
        return s;
    }
}

相關(guān)文章

最新評論