C#基础---值类型和引用类型
2018-06-18 01:04:18来源:未知 阅读 ()
1、先附上一份值类型和引用类型各自的成员
2、值类型和引用类型的区别
- 值类型直接存储其值,引用类型存储其值的引用
- 值类型变量都存储在堆栈中,引用类型在托管堆中分配存储单元
- 值类型变量不能为null,必须有确定的值,引用类型被赋值前的值都是null
- 值类型是从System.ValueType类继承而来的类型
3、值类型
struct类型:由一系列具有相同类型或不同类型的数据构成的数据集合
static void Main(string[] args) { Person person = new Person(); person.age = 10; Console.WriteLine(person.age); Console.Read(); } struct Person { public int age; public string name; public string fname; public string lname; }
enmu类型:
3、类型转换
- 隐式转换:从类型A转换成类型B的转换可在任何情况下进行,转换规则简单,可由编译器自行完成转换。
- 显示转换:从类型A转换成类型B的转换只能在某些情况下进行,转换规则较复杂,应进行某些类型的处理。
- 装箱:将值类型转换成引用类型的过程。
- 拆箱:将引用类型转换成值类型的过程。
4、常量
使用关键字const创建常量,创建常量时必须设置其初始值,一旦设置不允许修改。
5、字符和字符串
Char只定义一个Unicode字符
String类定义的变量是一个引用类型,可以对String类型的变量进行null赋值。
StringBuilder:可变字符串类,存在与System.Text。
String和StringBuilder的区别:
String对象是不可改变的,每次使用String方法时,都要在内存中创建一个新的字符串对象,就需要为该新的对象分配新的空间
StringBuilder对象时可修改的。
6、数组和集合
(1)数组
数组的特点:
- 同一数组中只能存放同一类型变量
- 数组的大小易经定义不可更改
- 数组成员在内存连续存放
- 数组下标从0开始
- 从抽象基类Array派生的引用类型
(2)ArrayList类
- ArrayList位于System.Collections命名空间下
- ArrayLisr容量可根据需要扩充,默认是(16)
- 只能是一维形式
(3)Hashtable
存储在DictionaryEntry中的键/值对集合,键不能为空引用,值可以。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- C++ 自动转换和强制类型转换(用户自定义类类型) 2020-06-10
- SWIG 3 中文手册——11. 类型映射 2020-06-07
- Visual Studio 2019提示不能将const char*类型的值分配到con 2020-06-07
- 如何0基础学习C/C++? 2020-06-06
- C++ 共用体 2020-06-05
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash