欢迎来到天天文库
浏览记录
ID:48741880
大小:363.00 KB
页数:52页
时间:2020-01-26
《C#程序设计及应用教程第2章数据类型与流程控制.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第2章数据类型与流程控制2.1数据类型2.2不同数据类型之间的转换2.3常量与变量2.4运算符与表达式2.5控制台应用程序与格式化输出2.6C#流程控制语句2.1数据类型C#数据类型分为两类:值类型和引用类型。值类型:包括简单类型、枚举类型、结构类型、可空类型。引用类型:包括类、接口、数组、委托。一般把引用类型的变量称为对象。值类型与引用类型区别堆栈堆56ij实际数据12345Hobj值类型和引用类型的区别特性值类型引用类型变量中保存的内容实际数据指向实际数据的引用指针内存空间配置堆栈(Stac
2、k)受管制的堆(ManagedHeap)内存需求较少较多执行效率较快较慢内存释放时间点执行超过定义变量的作用域时由垃圾回收机制负责回收可以为null不可以可以2.1.2整型C#提供了八种整型(即计算机组成原理中的“定点数”):sbyte:1字节有符号byte:1字节无符号short:2字节有符号ushort:2字节无符号int:4字节有符号,最常用uint:4字节无符号long:8字节有符号ulong:8字节无符号2.1.3浮点类型float:4字节浮点数,常用。例如:35.0fdouble:8
3、字节浮点数,常用。例如:2.7E+23decimal:16字节浮点数,特殊的浮点数,精度高,适用于金融、货币等需要高精度数值的领域。其类型指定符为M(或m)。例如:decimaly=9999999999999999999999999m;float和double的浮点数格式与计算机组成原理介绍的IEEE754规定的格式相同2.1.4布尔型用bool表示,bool类型只有两个值true和false。例如:boolisExist=false;boolb=(i>0&&i<10);注意if(i)j+=10
4、;//错误if(j=15)j+=10;//错误2.1.5字符型与字符串类型char型,为单个Unicode字符,字符型常量必须用单引号引起来。例如:charch=’a’;如果是字符串(单个字符的组合),对应的类型为string。string类型的常量用双引号将字符串引起来。例如:stringstr=“hello”;char和string类型的常量均可以使用转义符。2.2值类型之间的数据转换有两种转换方式:隐式转换与显式转换;如果是不同值类型之间的转换,可以使用Convert类。2.2.1隐式转换
5、和显式转换隐式转换从低精度、小范围的数据类型转换为高精度、大范围的数据类型,可以用隐式转换。例如:intk=1;longi=2;i=k;//隐式转换2.2.1隐式转换和显式转换显式转换如:longk=5000;inti=(int)k所有的隐式转换也都可以采用显式转换的形式来表示。如:inti=10;longj=(long)i;将大范围类型的数据转换为小范围类型的数据的时候,必须特别谨慎,因为此时有丢失数据的危险。2.2.2装箱与拆箱Object类型:所有其他引用类型的基类。装箱:将值类型转换为o
6、bject类型inti=123;objecto=i;拆箱:将object类型转换为值类型intk=(int)o;2.3常量和变量C#中提供2种类型的常量:使用const关键字声明const常量是在编译时设置其值并且永远不能更改其值的字段,在对程序进行编译的时候,编译器会把所有const常量全部替换为常数。使用readonly关键字声明readonly关键字在程序运行期间只能初始化“一次”的字段,可以在声明语句中初始化该字段,也可以在构造函数中初始化该字段。初始化以后,用readonly声明的字段
7、的值就不能再更改。二者区别:readonly常量运行时初始化,const常量编译时初始化。const常量只能在声明中赋值,readonly常量既可以在声明中赋值,也可以在构造函数中赋值。变量变量用来表示一个数值、一个字符串值或者一个类的对象。变量存储的值可能会发生更改,但变量名称保持不变。C#定义了7类变量,分别是:静态变量、实例变量、数组元素、值参数、引用参数、输出参数和局部变量。classA{publicstaticintx;inty;voidF(int[]v,inta,refintb,ou
8、tintc){inti=1;c=a+b++;}}变量声明变量举例:inta=100;//声明一个整型变量a,并赋初值为100也可以采用先定义、后赋值的方式,例如:inta;//声明一个整型变量aa=100;//为整型变量a赋值为100另外,也可以把几个变量声明和初始化用一条语句完成,各个变量之间用逗号分隔,例如:inta=100,b,c=200,d;//声明整型变量a、b、c、d,并将a赋值100,c赋值200匿名类型的变量匿名类型的变量就是程序员不必指定“局部”变量的类型,统统用var来表示类
此文档下载收益归作者所有