C#语法基础数据类型.ppt
C#语法基础,内容,标识符关键字C#基本数据类型运算符表达式和语句,分支循环方法变量的作用与域,标识符,C#对各种变量、方法和类等要素命名时使用的字符序列称为标识符C#标识符命名规则约定俗成:c#标识符选取遵循“见名时识意”且不能与c#语言的关键字重名的原则,关键字,C#中一些赋以特定的含义,用做专门用途的字符串称为关键字(keyword)(编译器规定的)所有c#关键字都是小写英文,C#数据类型,浮点类型(float、double、decimal),整数类型,浮点型,float型:取值范围在1.5e45 到 3.4e38精度为7位double型:取值范围在5.0e324 到 1.7e308精度为15到16位,小数型decimal,取值范围在1.010e28 至 7.910e28精度为28到29位,逻辑型bool,bool类型适于逻辑运算,一般用于程序流程控制。bool类型数据只允许取值true或false,不可以0或非0的整数代替true和false,这和c语言不同用法举例:Bool flag;flag=true;if(flag=true)do something,枚举型 enum,实质就是使用符号来表示的一组相互关联的数据(枚举和类同级)意义:限定变量的取值范围。注意事项:枚举元素的数据值是确定的,一旦声明就不能在程序的运行过程中更改;枚举元素的个数是有限的,同样一旦声明就不能在程序的运行过程中增减;默认情况下,枚举元素的值是一个整数,第一个枚举数的值为 0,后面每个枚举数的值依次递增 1;如果需要改变默认的规则,则重写枚举元素的值即可,例如:enum MyEnuma=101,b,c,d=201,e,f;TestEnum.cs,结构型struct,结构型必须使用struct来标记。结构型的成员数据成员表示结构的数据项方法成员表示对数据项的操作。详见面向对象部分,字符型char,char型数据用来表示通常意义上“字符”字符常量为用单引号扩起来的单个字符,例如:char eChar=a;char cChar=中;C#字符采用unicode编码,每个字符占两个字节,因而可以用十六进制编码形式表示,例如:char c1=u0061;注:Unicode是全球语言统一编码C#语言中还允许使用转义字符来将其后的字符串变为其它含义,例如:char c2=n;/换行,数据类型转换,1.隐式转换如果参与运算的数据类型不相同,则先转换成同一类型,然后进行运算;转换时按数据长度增加的方向进行,以保证精度不降低,例如int型和long型运算时,先把int数据转成long型后再进行运算;所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算;2.显示转换(类型说明符)(待转换的数据)例如:(int)(x+y)3.System.Convert类的类型转换方法 ToBoolean、ToByte、ToChar、ToInt32、ToSingle、ToString,程序的格式,比算法更重要大括号对齐遇到 缩进程序块之间加空行并排语句之间加空格运算符两次加空格 前面加空格成对编程,原则让别人看的更清楚让别人看得更舒服,C#常量,整型常量123实型常量3.14字符常量a逻辑常量true、false字符串常量”HelloWorld”,注意区分字符常量和字符串常量,C#变量,C#变量是程序中最基本的存储单元,其要素包括变量类型和作用域。C#程序中每个变量都属于特定的数据类型,在使用前必须对其声明,声明格式为:Type varName value例如:int i=100;float f=12.3f;double d1,d2,d3=0.123;String s=“Hello”;从本质上讲,变量其实是内存中的一小块区域,使用变量名来访问这块区域,因此,每个变量使用前必须先申明,然后必须进行赋之值(填充内容),才能使用.,C#变量的分类,按被声明的位置划分:局部变量:方法或者语句块内部定义的变量成员变量:方法外部、类的内部定义的变量注意:类外面(与类对应的大括号外面)不能有变量声明按所属的数据类型划分:基本数据类型变量引用数据类型变量,变量存储到什么地方,寄存器处理器内部,数量有限,速度快,不可直接控制堆栈非对象存储int i=5;堆一切new出来的对象例如:Cat s=new Cat();也有例外,例如string类型常量存储常常与代码一起存放,程序执行过程,1.Load到内存区硬盘,内存,程序,代码,操作系统,heap,stack,Data segment,Code segment,2.找到main方法开始执行,New出来的,局部变量,静态变量,存放代码,3.执行过程中的内存管理,运算符与表达式,算术运算符与表达式 赋值运算符与表达式 关系运算符与表达式 逻辑运算符与表达式,算术运算符与表达式,C#算术运算符包括+、-、*、/、%、+、-共七种 自增+/自减-运算符当+或-运算符置于变量的左边时,称之为前置运算,表示先进行自增或自减运算再使用变量的值,而当+或-运算符置于变量的右边时,称之为后置运算,表示先使用变量的值再自增或自减运算 例如:设变量i=1、变量j=2,则表达式(+i)+(j-)的值为4,赋值运算符与表达式,1.简单赋值运算符一般形式为:变量=表达式 注意事项;如果赋值号两边的数据类型不同,则系统将自动先将赋值号右边的类型将转换为左边的类型再赋值;不能把右边数据长度更大的数值类型隐式转换并赋值给左边数据长度更小的数值类型。2.复合赋值运算符+=、-=、*=、/=、%=、&=、|=、=、=例如:a+=5 等价于a=a+5x*=y+7 等价于x=x*(y+7)r%=p 等价于r=r%p,关系运算符与表达式,关系运算符用来对两个操作数比较,以判断两个操作数之间的关系。C#的关系运算符有=、!=、=,关系运算符的优先级低于算术运算符。由关系运算符组成的表达式称为关系表达式。关系表达式的运算结果只能是布尔型值,要么是true,要么是false。例如,设置变量i=5、j=4,则关系表达式i!=j的结果为true。,逻辑运算符与表达式,C#的逻辑运算符包括!、&(短路与)或&、|或|、,分别是逻辑非、逻辑与、逻辑或、逻辑异或运算。逻辑运算符的优先级低于关系运算符的优先级,但高于赋值运算符的优先级。由逻辑运算符组成的表达式称为逻辑表达式。逻辑表达式的运算结果只能是布尔型值,要么是true,要么是false。例如,设置变量i=5、j=4,则逻辑表达式 i!=j&i=j的结果为true。例子:MSDN,