当前位置:  编程技术>.net/c#/asp.net

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

    来源: 互联网  发布时间:2014-10-29

    本文导语:  代码如下: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(...

代码如下:

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


    
 
 

您可能感兴趣的文章:

  • Python中实现json字符串和dict类型的互转
  • 求救:关于将类型名称字符串转变成类型相应类型的问题
  • 怎样将字符串类型转换成double类型?
  • 请问在jbuilder中如何将String类型的字符串赋值给StringBuffer类型的变量?
  • 关于时间类型向字符串以及字符串向时间类型的转换问题? 很急
  • 小问题:如何将一个字符串类型(比如“2001-6-26”)转换为一个日期类型?立即给分。
  • Python中实现字符串类型与字典类型相互转换的方法
  • 因为mmap函数返回值是void*类型,是否可以将其强制转换成char*类型,按字符串操作,然后将修改重新写入内存映像即可????
  • unix和windows的字符串类型是否匹配?
  • 请问下linux下有没有字符串类型?
  • 求救啊!!1如何把off_t类型转换为字符串char[]???
  • linux下c语言字符串数据类型的问题!
  • 请问:java下有没有方法可以把字符串转变成类型或变量?
  • Linux下的C语言字符串和字符有几种类型?和Windows下区别是不是很大?
  • 解决无法在unicode和非unicode字符串数据类型之间转换的方法详解
  • sql将时间类型转换为字符串类型汇总
  • C#随机生成Unicode类型字符串
  • 请问如何将一个时间类型的值转换为字符串?
  • 关于将字符串转换为DOUBLE类型????????????????????在线等待!!!!!!
  • 在JSP里面怎样处理这种类型的字符串!!没分?
  • 很奇怪,varchar2类型在sql*plus中可以看到正常的字符串,用java读出来却是二进制?
  • C# Split分隔字符串的应用(C#、split、分隔、字符串)
  • C#实现移除字符串末尾指定字符的方法
  • C#实现中英文混合字符串截取的方法
  • C#生成随机字符串的实例
  • c# split分隔字符串使用方法
  • C#统计字符串里中文汉字个数的方法
  • C#中判断字符串是全角还是半角的实现代码
  • C#实体类转换成Json字符串的实现代码
  • C#实现将千分位字符串转换成数字的方法
  • c#转义字符串中的所有正则特殊字符方法示例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • php二维数组转换为字符串示例
  • 拼接SQL字符串方法示例
  • php二维数组转成字符串示例
  • jquery解析xml字符串简单示例
  • java字符串比较获取字符串出现次数的示例
  • sql带分隔符的截取字符串示例
  • php mb_substr()函数截取中文字符串应用示例
  • python字符串替换示例
  • md5 16位二进制与32位字符串相互转换示例
  • c#字符串编码编码(encoding)使用方法示例
  • java字符串反转示例分享
  • php中文字符串截取函数示例
  • PHP字符串的递增和递减示例介绍
  • 字符串内存驻留机制详解示例
  • c#字符串使用正则表达式示例
  • c++面试题字符串拷贝函数示例
  • 输入3个字符串,将它们按照字母由大到小排序(示例代码)
  • php删除字符串HTML标签的函数示例
  • php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
  • c#获取字符串宽度的示例代码(字节数方法)
  • C++ Strings(字符串) 成员 size():返回字符串中字符的数量
  • 关于字符串的操作,我想得到字符串的长度,和他开始两位组成的新的字符串,例如::
  • C++ Strings(字符串) 成员 c_str():将字符串以C字符数组的形式返回
  • 如何使GDB显示完整的字符串变量,当字符串比较长时。
  • C++ Strings(字符串) 成员 empty():如果字符串为空,返回真
  • php判断字符串在另一个字符串位置的方法
  • C++ Strings(字符串) 成员 length():返回字符串的长度
  • 请教,有关16进制字符串形成2进制字符串的问题!
  • C++ Strings(字符串) 成员 resize():重新设置字符串的大小
  • shell程序:在大文件中查找特定字符串,但该字符串可以跨行
  • 输入3个字符串,将它们按照字母由大到小排序(示例代码) iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3