创建值类型和引用类型.ppt

创建值类型和引用类型.ppt

ID:56529152

大小:244.00 KB

页数:29页

时间:2020-06-27

创建值类型和引用类型.ppt_第1页
创建值类型和引用类型.ppt_第2页
创建值类型和引用类型.ppt_第3页
创建值类型和引用类型.ppt_第4页
创建值类型和引用类型.ppt_第5页
资源描述:

《创建值类型和引用类型.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章创建值类型和引用类型值类型和引用类型在内存中的存储状态结构枚举数组集合1值类型和引用类型在内存中的存储状态值类型直接存储值包括:简单类型(包括整型、浮点型、布尔型、字符型等)结构类型枚举类型等引用类型存储的是对值的引用而数据存储在堆(Heap)中包括:类、数组、接口、委托intnum1;num1=50;初始化用num1初始化num2intnum2;num2=num1;变量声明值类型:变量声明5050num1和num2包含50num1num2引用类型:classCar{publicintModel;}cl

2、assTest{publicstaticvoidMain(){Carc1=newCar();c1.Model=10;Carc2=c1;}}结构与类相似,但是:结构是值类型。结构不支持继承。在结构中不可显式定义不传参数的构造函数,但能定义传参数的构造函数2结构structStudent{publicstringxh;publicstringxm;publicvoidGetInfo(){System.Console.WriteLine("xhis:{0},xmis{1}",xh,xm);}}classTest{p

3、ublicstaticvoidMain(string[]args){Students1=newStudent();s1.xh="1001";s1.xm="张三";s1.GetInfo();System.Console.Read();}}枚举属于值类型。enumDays{星期一,星期二,星期三,星期四,星期五,星期六,星期日}枚举定义的位置可以在类外,也可以在方法外,但不可以在方法内.例:如果今天是星期一,求3天后是星期几?3枚举enumDays{星期一,星期二,星期三,星期四,星期五,星期六,星期日}clas

4、sProgram{staticvoidMain(string[]args){Daysd=Days.星期一;d=d+3;System.Console.WriteLine(d);System.Console.Read();}}怎样定义数组foreach遍历数组数组作为方法的参数多维数组4数组数组是相同类型的数据元素按顺序组成的一种线性表。元素在数组中的相对位置由下标来指定。数组中的每个元素通过数组名加下标进行表示。在C#中数组属于引用类型。类型[]数组名=new类型[数组元素个数];例如:int[]a=newin

5、t[50];float[]b=newfloat[10];4.1数组的定义我们也可以这样定义数组:例如:int[]a;a=newint[50];数组元素个数可以是一个变量int[]x;x=newint[100];x是指向堆中数组的引用变量。以后就可以通过这个引用变量来访问堆中的数组。x=null;数组的内存分配情况某个函数的栈空间,此函数中定义的变量只在此函数运行时存在栈内存堆内存int[]x某个函数的栈空间,此函数中定义的变量只在此函数运行时存在0x3000栈内存堆内存Newint[100]产生的数组…X[0

6、]X[1]X[99]int[]x0x3000数组首地址某个函数的栈空间,此函数中定义的变量只在此函数运行时存在null栈内存Newint[100]产生的数组…X[0]X[1]X[99]int[]x0x3000数组首地址堆内存有时候会遇到这样的情况:数组元素的个数事先知道,并且元素的值可以确定,则可以在数组定义过程中为数组元素赋值。int[]a={1,2,3,4};系统会自动在堆中分配4块int型的空间,并依次赋值。但是这样定义是错误的:int[]a;a={1,2,3,4};另一种形式:int[]a=newin

7、t[]{1,2,3,4};系统会自动在堆中分配4块int型的空间,并依次赋值。这样定义是可以的:int[]a;a=newint[]{1,2,3,4};数组元素的访问数组名[下标]下标从0开始例:计算平均成绩。int[]score={70,67,53,82,90};intsum=0;for(intk=0;k<5;k++)sum+=score[k];System.Console.WriteLine("平均成绩为:"+sum/5.0);使用new创建数组之后,数组中的每个元素会被自动初始化,初始化的值参照对象初始化

8、的值。int[]a=newint[10];for(inti=0;i<10;i++){System.Console.WriteLine("a["+i+"]="+a[i]);}每个数组都有一个属性Length来指明其长度(元素个数)可将10改为F.Length例:使用数组计算Fibonacci数列的前六项。stringa=“”;int[]F=newint[6];F[0]=1;F[1]=1;for(int

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。