第二章回顾
来源:互联网 发布:软件学报审稿流程 编辑:程序博客网 时间:2024/04/25 01:37
第二章: 深入C#数据类型 1. 值类型: 源于System.ValueType家族,每个值类型的对象都有一个独立的内存区域用于保存自己的值,值类型数据所在的区域成为栈,(Stack)。 只要在代码中修改它,就在它的内存区域内保存这个值。 static void Main(string[] args) { int heightZhang = 170; int heightLi = heightZhang; Console.WriteLine("去年,张:" + heightZhang + "去年,李:" + heightLi); heightLi = 180; Console.WriteLine("今年,张:" + heightZhang + "今年,李:" + heightLi); } 2.引用类型: 源于System.object家族,在C#中引用类型主要包括数组,类和接口。 static void Main(string[] args) { int[] zhang = new int[] { 170, 60 }; int[] li = zhang; Console.WriteLine("去年,张身高:" + zhang[0] + "体重是:" + zhang[1] + "去年,李身高:" + li[0] + "体重是:" + li[1]); li[0] = 180; li[1] = 90; Console.WriteLine("今年,张身高:" + zhang[0] + "体重是:" + zhang[1] + "今年,李身高:" + li[0] + "体重是:" + li[1]); }//数组复制static void Main(string[] args) { int[] zhang = new int[] { 170, 60 }; int[] li = zhang; Console.WriteLine("复制前----,张身高:" + zhang[0] + "体重是:" + zhang[1] + "去年,李身高:" + li[0] + "体重是:" + li[1]); for (int i = 0; i < zhang.Length; i++) { li[i] = zhang[i]; } Console.WriteLine("去年,张身高:" + zhang[0] + "体重是:" + zhang[1] + "去年,李身高:" + li[0] + "体重是:" + li[1]); li[0] = 180; li[1] = 90; Console.WriteLine("今年,张身高:" + zhang[0] + "体重是:" + zhang[1] + "今年,李身高:" + li[0] + "体重是:" + li[1]); }数据类型分类: 值类型: 基本数据类型: 整形:int 长整形:long 浮点型:float 双精度型:double 字符型:char 布尔型:bool枚举类型: 枚举:enum结构类型: 结构:struct引用类型: 类: 基类:System。Object 字符串:string 自定义类:class 接口: 接口:interface 数组: 数组:int[],string[] 结构的定义: 访问修饰符 struct 结构名{ //结构体}特点: 结构中可以有字段,也可以有办法; 定义时,结构中的字段不能被赋初值。 使用: 可以不用new ,直接定义结构的对象即可, 声明结构的对象后,必须给结构的成员赋初值。 结构用的越多,消耗的存储空间越多。 public int _id; public int _age; public void Show() { Console.WriteLine("ID:{0}\n年龄:{1}",_id,_age); } static void Main(string[] args) { one o = new one(); o._id = 1000; o._age = 10; o.Show(); }装箱和拆箱: 值类型转换为引用类型为装箱引用类型转换为值类型为拆箱 static void Main(string[] args) { int i = 123; object o = i; i = 456; Console.WriteLine("值类型为:{0}", i); Console.WriteLine("引用类型为:{0}", o); Console.ReadLine(); } 使用值传递,在方法中对参数值的更改在调用后不能保留, 使用ref方式传递,可以将对参数值的更改保留。
0 0
- 第二章回顾
- 第七章回顾1
- 第七章回顾2
- 第七章回顾3
- 第七章回顾3.2
- 第七章回顾3.3
- 第七章回顾3.4
- 第七章回顾4
- 第三章回顾
- 测试基础 1-7章回顾
- Javascript高级程序设计1-2章回顾总结
- Javascript高级程序设计第3章回顾总结部分--数据类型
- c++(17)一、二两章回顾
- c++(17)一、二两章回顾2
- 匦泻怪平临假让装置苍掩谋魏章回
- Linux私房菜第六章回忆要点
- 机器学习实战 第九章回归树错误
- 第二
- 性能优化之数据存储&DOM编程
- Qt之格栅布局(QGridLayout)
- 关于scanf、getchar的用法解析
- 学习总结(一)
- jzoj4064 JSOI2015 套娃 [贪心]
- 第二章回顾
- 关于如何使用枚举类的values方法!
- SylixOS CAN驱动框架之一
- js将数组对象转化为json格式的数组
- Spring系列(一)——简介
- editText禁止第一个输入0
- 设计模式-代理模式
- poj 1265 Area
- Hexo搭建个人博客